Contributing Guide
Thank you for considering contributing to ConfigBuddy! This document provides guidelines and instructions for contributing.
Development Setup
Fork and clone the repository:
git clone https://github.com/your-username/configbuddy.git cd configbuddy
Create a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
Install development dependencies:
pip install -e ".[dev]"
Install pre-commit hooks:
pre-commit install
Code Style
We use the following tools to maintain code quality:
black
: Code formattingisort
: Import sortingruff
: Lintingmypy
: Type checking
These checks are automatically run by pre-commit hooks.
Running Tests
Run tests using pytest:
pytest
For coverage report:
pytest --cov=configbuddy
Pull Request Process
Create a new branch for your feature:
git checkout -b feature-name
Make your changes and commit them:
git add . git commit -m "Description of changes"
Push to your fork:
git push origin feature-name
Open a Pull Request on GitHub
Guidelines
Write meaningful commit messages
Add tests for new features
Update documentation as needed
Follow the existing code style
Add type hints to new code
Write docstrings for new functions/classes
Code of Conduct
Please note that ConfigBuddy has a Code of Conduct. By participating in this project, you agree to abide by its terms.