Contributing
Thank you for your interest in contributing! We welcome contributions from the community. Before you get started, please read this guide carefully.
Contributor License Agreement
All contributions require acceptance of our Contributor License Agreement (CLA) .
This project is licensed under the AGPL-3.0-or-later. To ensure we can enforce this license and protect the project, we require that all contributors assign copyright of their contributions to the project maintainer, Avery Wagar. This is a standard practice used by the FSF, Apache Foundation, and many other open source organizations.
How to Sign
When you open your first pull request, the CLA Assistant bot posts a comment with a sign-in link. Click it, sign in with your GitHub account, and confirm — that’s it. You only need to sign once; subsequent PRs are automatically accepted. The PR’s CLA status check will go green as soon as you sign.
If you are contributing on behalf of your employer or another entity, please ensure you have authorization to sign on their behalf.
Getting Started
- Fork the repository
- Create a feature branch from
main(git checkout -b feature/my-feature) - Make your changes
- Ensure your code passes all existing tests
- Commit your changes with clear, descriptive commit messages
- Push to your fork and open a pull request
Pull Request Guidelines
- Keep PRs focused — one feature or fix per PR
- Include a clear description of what your change does and why
- Reference any related issues (e.g.,
Closes #42) - Make sure CI passes before requesting review
- Be responsive to feedback during code review
Commit Messages
Write clear, concise commit messages. Use the imperative mood in the subject line:
Add support for MIDI input
Fix buffer overflow in signal chain
Update dependencies for PedalKernel 0.3
Reporting Issues
- Check existing issues before opening a new one
- Use the issue templates if available
- Include steps to reproduce, expected behavior, and actual behavior
- Include your environment details (OS, version, relevant hardware)
Code of Conduct
Be respectful and constructive. We’re all here to build something great.
Questions?
Open a discussion or issue if you’re unsure about anything. We’d rather help you contribute than have you give up.