Contributions can be one of the following task: identifying an issue, creating an issue, solving an issue, or reviewing.
Correctly identifying issues can be as important as solving them. If you have found an issue or think an important feature is missing, documenting it can go a long way.
- You should search existing issues
- If there is an issue similar to yours
- React to it with a 👍 to show your interest, as it helps prioritize
- Comment below if you have a diverging opinion or additional details to characterize the issue
- If there is no issue that is similar to yours, then create one
An issue should ideally be small or be structured in small steps that do not need to be addressed all at once. The goal is to limit merge conflicts by frequently integrating commits, ease contributions by reducing their scope, and give a better visibility of what is left to do.
The process to create an issue is the following:
- Create a new issue and choose between bug and feature request.
- Pick a fitting title.
- Add the appropriate labels.
- Fill the template issue. Not all fields are necessary, but the more information the better.
In the case of an issue that is composed of multiple steps, use tick boxes (lines starting with - [ ]
). Github tracks the state of each boxes, and we can then do pull-requests that only ticks some of the boxes.
Once you found an issue you want to work on, you should follow these steps:
- Create a new branch and push it to create a draft PR
- Mention the issue(s) you want plan to solve in the draft. Do not try to solve too many at once if it could take an unexpected amount of time, do multiple PRs instead.
- Commit your changes locally to solve the issue(s) and push frequently to update the PR as you go.
- Request a review from one of the contributors.
- Merge the PR once approved.
Except for PRs fixing critical issues and pressing bugs, you should try to give time for others to review before merging.
Reviewing PRs is always a good practice and helps building more robust code. If you see pending PRs, never hesitate to review them, add comments and suggest edits.
- @Dodecahedr0x
- @R-H-K
- @metaproph3t
- @0xbigz