First off, thank you for considering contributing to MultiPi! It's people like you that make open source such a great community.
We welcome many types of contributions, including bug reports, feature requests, documentation improvements, and code contributions.
If you encounter a bug, please open an issue on our GitHub repository. Before submitting, please check if a similar issue already exists.
When reporting a bug, please include:
- Your operating system name and version.
- Version of MultiPi you are using.
- Steps to reproduce the bug.
- Expected behavior.
- Actual behavior, including any error messages and stack traces.
If you have an idea for a new feature or an improvement to an existing one, please open an issue on GitHub first to discuss it.
- Provide a clear description of the enhancement.
- Explain why this enhancement would be useful.
- Include examples or mockups if possible.
Improvements to the documentation (READMEs, guides in docs/, code comments, docstrings) are always welcome. You can submit a pull request with your changes.
Code contributions are highly appreciated. Here's how to submit a pull request:
- Fork the Repository: Create your own fork of the
M-Eng/multipirepository on GitHub. - Clone Your Fork: Clone your fork to your local machine.
git clone https://github.com/YOUR_USERNAME/multipi.git cd multipi - Create a Branch: Create a new branch for your changes.
git checkout -b feature/your-feature-name # For features # or git checkout -b fix/issue-number-description # For bug fixes
- Set Up Development Environment: Follow the installation instructions in the main
README.md. Consider installing development dependencies if arequirements-dev.txtexists. - Make Changes: Implement your feature or fix the bug.
- Code Style: Please ensure your code adheres to standard Python style guidelines (PEP 8). We recommend using a formatter like Black and a linter like Flake8.
- Add Tests: If you add new functionality, please include tests. Ensure existing tests pass.
- Commit Changes: Commit your changes with a clear and concise message.
git commit -m "feat: Add feature X" # or git commit -m "fix: Resolve issue #123 by doing Y"
- Push to Your Fork: Push your branch to your fork on GitHub.
git push origin feature/your-feature-name
- Open a Pull Request: Go to the original
M-Eng/multipirepository on GitHub and open a pull request from your branch to themainbranch (or the appropriate target branch).- Provide a clear title and description for your pull request.
- Reference any relevant issues (e.g., "Closes #123").
If you have questions about contributing, feel free to open an issue.