Skip to content

Contributing

Setup

git clone https://github.com/andersonviudes/legendarr.git
cd legendarr
make install

Workflow

make lint    # ruff check + format --check
make format  # ruff format
make test    # pytest

CI runs the same lint, format check, and test suite on every push and pull request to main. The Docker image is only built on release, not on every push or pull request.

Commit messages

Commits follow Conventional Commits: a type: prefix (feat, fix, docs, chore, ci, refactor, test, ...) followed by a short, imperative summary.

Code style

Follow the existing Screaming Architecture + Vertical Slice layout: new features get their own top-level slice folder named after the business capability, inside the module that owns them (src/backend for domain logic, src/web for UI/routes).

Documentation

Docs live in docs/ as Markdown, built with MkDocs and the Material theme. Preview locally with:

make docs-install
make docs-serve