- Python 3.12+
- uv for dependency management
- tox for running tests
- charmcraft for Juju charms
uv venv && source .venv/bin/activate
uv sync
tox -e fmt # format
tox -e lint # lint
tox -e static # type check
tox -e unit # test (80% coverage required)Follow Conventional Commits:
<type>(scope): description
Types: feat, fix, docs, refactor, test, ci, chore
- Fork and create a branch (
feat/thingorfix/bug) - Make changes, add tests, run
tox - Open PR with clear description and reference any related issues
All PRs require review and passing CI.
See CODE_OF_CONDUCT.md.