How to Contribute to Barf
September 2, 2023 ยท View on GitHub
Barf is an open framework, it is a project that is open to contributions from the community. If you would like to contribute to Barf, please follow the guidelines below.
Code of Conduct
Barf has adopted a Code of Conduct that we expect project participants to adhere to. Please read the full text so that you can understand what actions will and will not be tolerated.
Reporting Issues
If you have found a bug or have a feature request, please report them at this repository's issues section. Please check that your issue has not already been reported.
Contributing Code
If you would like to contribute code to fix a bug, implement a new feature, or improve the documentation, please follow the steps below:
- Open a detailed issue for your contribution here but you should only do that if one doesn't already exist.
- Fork the repository.
- Create a new branch for your fix/feature.
- Make your changes, committing at logical breaks.
- Be sure that you include descriptive comments within the code, in places where your change or methodology might not be immediately clear.
- Note importantly that your commit messages should be descriptive and follow the semantic commit message format.
- Make sure you have added the necessary tests for your changes, if any is needed.
- Run all the tests to assure nothing else was accidentally broken.
- Push your branch to your fork of the repository.
- Submit a pull request to the
mainbranch of the Barf repository. - Remember to link your pull request with the issue you created for it.
- Ensure that your pull request is descriptive and passes all status checks.
- Pat yourself on the back and wait for your pull request to be reviewed and merged.
Becoming a Collaborator (Maintainer)
To become a collborator on Barf means getting added to the list of those with direct access to the repository. This means you can, sometimes (not at all times), make direct push to the repistory without having to go through the pull request route. But since this grants delicate access, it is important that you meet some certain criterias. These include but might be limited to...
- proven experience in the field of software engineering
- proven experience working with the language this package is written in
- proven track of following the laid down rules of this project
- a good track record of contribution, adaptation, and communication on this project
- and, of course, a good record of dedication to the project's cause.
Note however that we can't have to many collaborators, which means you might meet this criterias but still not get the role. Likewise, it is possible that you be relieve of your collaborator role if the team notices consistent unavailability. We understand that open source can be tasking and we won't aim to pressure you much more than you can handle but would still love the project to go on by allowing others the chance of sustainable development.