CONTRIBUTING
Contributing to Gratheon
Thank you for your interest in contributing to Gratheon! We welcome
contributions from the community.
Contributor License Agreement (CLA)
Before we can accept your contributions, we require that you sign our
Contributor License Agreement (CLA). This is a standard practice for open
source projects and helps us maintain clear ownership and licensing of the code.
Why do we need a CLA?
Gratheon uses a dual-licensing model:
- AGPL v3 for open source use
- Commercial License for enterprise customers
The CLA gives us the rights to:
- Include your contribution in both the open source and commercial versions
- Relicense your contribution under different terms if needed
- Protect the project from legal issues
Important: You retain ownership of your contribution and can use it
however you like. The CLA just gives us permission to use it too.
How to sign the CLA
We use CLA Assistant to streamline the CLA process:
-
First-time contributors: When you submit your first pull request, the
CLA Assistant bot will automatically comment and ask you to sign the CLA. -
Click the link in the bot's comment to review and sign the CLA.
-
Sign digitally using your GitHub account (takes ~2 minutes).
-
That's it! Once signed, you can contribute to any Gratheon repository.
Alternatively, you can:
- Download the Individual CLA
- Or Corporate CLA if contributing on behalf
of a company - Sign and email to contributors@gratheon.com
For Corporate Contributors
If you're contributing as part of your job, your employer needs to sign the
Corporate CLA. Please have your legal department review and sign the
Corporate CLA.
Code of Conduct
Be respectful and constructive in all interactions. We follow standard open
source community guidelines.
How to Contribute
Reporting Issues
- Check if the issue already exists
- Use issue templates if available
- Provide clear reproduction steps
- Include relevant environment details
Submitting Pull Requests
- Fork the repository
- Create a branch for your feature/fix
- Make your changes following our coding standards:
- Clean, readable code
- No unnecessary comments (code should be self-documenting)
- Follow existing code style
- Add tests if applicable
- Test your changes thoroughly
- Submit a pull request with:
- Clear description of changes
- Link to related issue if applicable
- Screenshots/examples if relevant
Coding Standards
- Write clean, maintainable code
- Follow existing patterns in the codebase
- No TODO comments (create issues instead)
- For Go: add
t.Parallel()to independent tests - For Go: use
// ARRANGE // ACT // ASSERTin tests - Use human-readable test names
Development Setup
See the README.md in each repository for specific setup instructions.
Questions?
- Open an issue for bugs or feature requests
- Email pilot@gratheon.com for CLA or commercial licensing questions
License
By contributing to Gratheon, you agree that your contributions will be licensed
under the same dual-license structure:
- AGPL v3 for open source use
- Available for commercial licensing to enterprise customers
See the LICENSE-AGPL and LICENSE-COMMERCIAL files for details.
Thank you for contributing to Gratheon! 🐝