Contributing¶
Thank you for being interested in contributing to open source software! There are lots of ways to contribute to the project:
- Try it out, and report any bugs or issues that you find
- Implement new features
- Review other contributor's pull requests
- Write documentation
- Participate in discussions
Development¶
To set up for development:
- Fork the repository on GitHub by clicking the "Fork" button on the project's GitHub page
-
Clone your fork (replace
YOUR-USERNAMEwith your GitHub username): -
Add the original repository as a remote to sync latest changes:
-
Install dependencies:
Running Tests¶
Run the test suite:
This will run the tests with coverage reporting.
Code Quality¶
We use several tools to maintain code quality. Run all checks with:
This runs:
Documentation¶
Documentation is built using Zensical. To preview locally:
Then visit http://127.0.0.1:8000 in your browser.
Pull Requests¶
To submit changes:
- Fork the repository
- Create a new branch for your changes
- Make your changes
- Run tests and code quality checks
- Submit a pull request
We aim to review pull requests promptly and provide constructive feedback if needed.
Releasing¶
This section is for maintainers only.
To release a new version:
- Update version in
pyproject.tomlfollowing Semantic versioning (for example:0.2.4) - Update
CHANGELOG.md, following Keep a Changelog - Create a new release on GitHub. Tag version like
0.2.4. Title0.2.4. Description copied from the changelog, including references to PRs for changes. - The GitHub release will automatically trigger a PyPI publish
If the PyPI publish fails, you can manually publish using: