Contributing
Thank you for your interest in contributing to the Rhesis SDK! This document provides guidelines and instructions for contributing to the project.
Setting Up Development Environment
Fork the repository on GitHub
Clone your fork locally:
git clone https://github.com/your-username/rhesis-sdk.git cd rhesis-sdk
Create a virtual environment and install development dependencies:
python -m venv venv source venv/bin/activate # On Windows, use `venv\Scripts\activate` pip install -e ".[dev]"
Development Guidelines
Code Style
We follow PEP 8 and use Black for code formatting. Run the following before submitting your changes:
black .
flake8 .
isort .
Testing
All new features should include tests. We use pytest for testing:
pytest
Make sure all tests pass before submitting a pull request.
Documentation
Please update the documentation when you add or modify features:
Add docstrings to all functions, classes, and methods
Update the relevant .rst files in the docs/source directory
Build and check the documentation locally:
cd docs make html # Open build/html/index.html in your browser
Pull Request Process
Create a new branch for your feature or bugfix:
git checkout -b feature/your-feature-name
Make your changes and commit them with clear, descriptive commit messages
Push your branch to your fork:
git push origin feature/your-feature-name
Open a pull request on the original repository
Ensure the PR description clearly describes the problem and solution
Address any feedback from the maintainers
Code of Conduct
Please be respectful and inclusive when contributing to this project. We follow a code of conduct that promotes a positive and welcoming community for all contributors.
License
By contributing to the Rhesis SDK, you agree that your contributions will be licensed under the project’s license.