Contributing¶
Thank you for your interest in contributing to OptiPFair! We welcome contributions from everyone.
For detailed guidelines on how to contribute, please see our CONTRIBUTING.md file in the repository.
Quick Start¶
- Fork the repository on GitHub
- Clone your fork locally:
- Install development dependencies:
- Create a new branch for your feature or bugfix:
- Make your changes, add tests, and ensure all tests pass:
- Submit a pull request
Development Workflow¶
Our development workflow follows these steps:
- Open an Issue: Start by opening an issue describing the feature or bug
- Discussion: Discuss the approach with maintainers and community
- Implementation: Make your changes with tests and documentation
- Pull Request: Submit a PR referencing the original issue
- Review: Address any feedback from code review
- Merge: Once approved, your PR will be merged
Documentation¶
When adding new features, please update the documentation as well. We use MkDocs for our documentation.
To preview documentation changes locally:
# Install MkDocs and required plugins
pip install mkdocs mkdocs-material mkdocstrings
# Serve the documentation
mkdocs serve
Then open your browser to http://127.0.0.1:8000/ to see the documentation site.
Code Style¶
We use the following tools to enforce code style:
black
for code formattingisort
for import sortingflake8
for lintingmypy
for type checking
You can run these checks with: