Development
This guide provides an overview of how to work with the development environment for this project, including tooling, commands, and recommended workflows.
Testing and linting
We currently do not have any tests :( But you can at least lint and reformat Python code using the following commands:
ruff check
ruff format
You can also apply fixes automatically:
ruff check --fix
Updating dependencies
-
Add a new Python dependency:
uv add package==<version> -
Commit the changes:
git add pyproject.toml uv.lock
To update the version of an existing transitive dependency, you can use uv lock --upgrade-package <package>=<version>.
Development workflow
This project overall uses basic development workflow, without release branches and feature branches. Therefore, please follow this steps:
- Create a new branch for your work
- Make changes and run ruff to keep code clean
- Keep your branch rebased on the latest main
- Commit only meaningful, focused changes
- Open a pull request once your work is ready
Contributing
If you are contributing — thank you! To keep contributions smooth and consistent, please follow these guidelines:
- Keep your branch up to date with
main - Prefer small, focused pull requests instead of large all-in-one ones
- Use clear, descriptive PR titles and summaries
- Include configuration updates if they affect the development environment
- Add documentation when introducing new features or changing existing behavior