Most of the setup is automated with make
. Check the Makefile
to learn more.
Python>=3.11
make
:- macOS:
xcode-select --install
- Linux: visit gnu.org
- Windows:
choco install make
or check chocolatey.org
- macOS:
make
will take care of setting a the virtual environment (it will be located in .venv
). It will also install pdm
and with it all dependencies.
Furthermore, it will install pre-commit
hooks to run checks on staged changes before each commit and to enforce the commit message style.
make bootstrap-dev
To run all of the checks below (formatting, testing, linting, typechecks) run:
make ci
ornaments
uses ruff
for formatting & linting and mypy
for typechecks.
make format # ruff formatting and auto-fixes
make lint # ruff checks
make mypy # mypy
To trigger pytest
and coverage
run the following:
make test
This will also generate a coverage badge which is displayed in the README.
A uniform commit message style and here. for better readibilty shall be enforced to be able to generate a changelog.
fix: feat: docs: style: refactor: perf:
test: build: ci: chore: revert:
git commit -m "feat: adds support for new feature"