Thank you for considering contributing to Cloud Shapes! 🎉 Your contributions help improve the project and ensure it remains a powerful event-driven projections database.
Please follow the guidelines below to ensure a smooth and effective contribution process.
If you encounter any bugs, have suggestions, or want to report a security vulnerability, please use GitHub Issues:
- Go to the Issues page.
- Search for existing issues to avoid duplicates.
- If the issue hasn't been reported, click "New issue".
- Provide a clear and concise description of the problem or suggestion.
- Include relevant details such as logs, error messages, or screenshots.
If you have ideas for new features or improvements, please:
- Open a new issue on the Issues page.
- Clearly describe the enhancement or feature request.
- Explain why it would be valuable and any potential use cases.
To contribute code changes, follow these steps:
-
Click "Fork" on GitHub to create a personal copy of the repository.
-
Clone your fork locally:
git clone https://github.com/<your-username>/cloud-shapes.git cd cloud-shapes
-
Set up the upstream repository to track changes from the main repo:
git remote add upstream https://github.com/neuroglia-io/cloud-shapes.git
-
Always create a new branch for your contributions:
git checkout -b feature/my-new-feature
-
Use a descriptive branch name, such as:
fix/event-validation
feature/workflow-indexing
chore/docs-update
-
Make sure your code follows the project coding standards.
-
Add or update unit tests if applicable.
-
Run tests before committing:
dotnet test
-
Format commit messages as:
git commit -m "fix(event-processing): Ensure CloudEvents are properly validated"
-
Push your branch:
git push origin feature/my-new-feature
- Go to your fork on GitHub and click "New Pull Request".
- Select the
main
branch as the base and your feature branch as the compare branch. - Provide a detailed description of your changes.
- Tag relevant contributors or reviewers.
To maintain consistency, follow these coding standards:
✅ Use C# conventions and follow .editorconfig
rules.
✅ Keep methods small and modular for readability.
✅ Use meaningful variable and function names.
✅ Always include XML documentation comments for public methods.
Before submitting a PR, make sure you have:
☑ Tested your changes locally.
☑ Updated documentation if applicable.
☑ Followed coding style guidelines.
☑ Linked the issue your PR addresses (if applicable).
☑ Checked that CI/CD pipelines pass after pushing the PR.
By contributing to Cloud Shapes, you agree that your contributions will be licensed under the Apache-2.0 License.
If you have questions, feel free to:
💬 Ask in Discussions – GitHub Discussions
🐞 Report an Issue – GitHub Issues
Thank you for making Cloud Shapes better! 🚀