Contributing to This Project
February 6, 2025 ยท View on GitHub
Thank you for considering contributing to this project! Your help is greatly appreciated.
How to Contribute
Reporting Issues
If you encounter a bug, have a feature request, or need clarification, please open an issue in the GitHub Issues section. When reporting a bug, include:
- A clear description of the issue
- Steps to reproduce
- Expected vs. actual behavior
- Any relevant error messages or logs
Submitting Code Changes
- Fork the repository and clone it locally.
- Create a new branch for your feature or fix:
git checkout -b feature-name - Make your changes and ensure they follow the project's coding style.
- Run tests to verify your changes:
pytest tests - Commit your changes with a meaningful message:
git commit -m "Describe your change briefly" - Push the branch to your fork:
git push origin feature-name - Create a Pull Request (PR) from your branch to the
mainbranch.
Code Style
This project follows standard Python best practices (PEP 8).
Please ensure your code is typed where applicable using type hints.
Make sure that every function has a docstring with types. We use the Google style docstring format. Here is an example for a Google style docstring.
Writing Tests
If your contribution includes code changes, please add or update tests to maintain high code quality. We use pytest for testing. All tests are located in the tests folder:
pytest tests
Ensure all tests pass before submitting your PR.
Reviewing Pull Requests
We encourage contributors to review open PRs and provide constructive feedback.
Donate
If you find this project useful, consider supporting it by buying me a coffee.
Other Ways to Contribute
- Writing tutorials or examples using GitHub Gists and referencing them in discussions.
- Fixing typos and improving the documentation by opening issues or creating pull requests.
Getting Help
If you have any questions, feel free to open a discussion in the GitHub Discussions or comment on an open issue.
Ground Rules
The goal is to maintain a diverse community that's pleasant for everyone. Please be considerate and respectful of others. Everyone must abide by our Code of Conduct and we encourage all to read it carefully.
Miscellaneous
For more information on contributing to open source projects, GitHub's own guide is a great starting point if you are new to version control. Also, checkout the Zen of Scientific Software Maintenance for some guiding principles on how to create high quality scientific software contributions.
Thank you for contributing!