Contributing
Quick Start
Fork and clone repository
Install:
uv pip install -e ".[dev,test]"(Recommended; or:pip install ...)Install pre-commit hooks:
pre-commit installCreate branch:
git checkout -b feature/nameMake changes, write tests
Run tests:
pytest tests/ -vCommit (hooks run automatically)
Push and create pull request
Guidelines
Code:
Follow existing style
Add docstrings and type hints
Use DBHandler for database ops
Validate input with Pydantic
Testing:
Add tests for new features
Ensure existing tests pass
Aim for >75% coverage
Pull Requests:
Clear title:
[Feature] Descriptionor[Fix] DescriptionInclude: purpose, changes, testing done
Keep changes focused and minimal
Pre-commit hooks check:
Code formatting (Black)
Import sorting (isort)
Linting (flake8)
Type checking (pyright strict mode)
Run manually: pre-commit run --all-files
Reporting Issues
Include:
OS and Python version
Steps to reproduce
Expected vs actual behavior
Error messages
See Development Guide for architecture details.