First, welcome! We are so excited to have someone spend time helping us build up GREASE! Our goal is to build awesome stuff and help people live more meaningful lives and not have to put out fires constantly. Here's a quick checklist for Non-Target contributors though:
- Signed Contribution Agreement
Okay now that's out of the way, lets go over some stuff we like to see in pull requests. We use git-flow to keep stuff cleaned up. Additionally we ask you please fork the project into your own namespace to keep the GREASE namespace as clean as possible. Here is the basic workflow:
- Have awesome idea (easy for you though)
- Fork GREASE
- Start a new branch for your feature
* branch prefixes we use:
feature/
: for featuressupport/
: for general refactoringhotfix/
: something broke and we need to fix it now
- Submit your Pull Request! Do it early and mark it
WIP
so the maintainer staff can help review it! - Tell the PR thread you are ready for review
- If any changes need to be made we will let you know
- Profit! You've merged into GREASE
- Be a Decent Human
- We love having people help-out GREASE and while we understand passion in a debate, we ask you remain kind to everyone and that code is treated as a gift, not an item of work for you to review. Additionally if changes need to be made, please let us know! We want to make GREASE as awesome as possible!
- Maintainers will Maintain
- As a maintainer, you're expected to help the community out!
- We want to ensure contributors feel the speed at which
we pride ourselves in. Maintainers are expected:
- To triage any new PR within 24 hours of submission
- If review is requested/required: Completed in 96 hours of submission
- If there are large merge conflicts (more than 5 files) work with the contributor if they request it to resolve the conflicts
- You are responsible for your PR
- Filing a PR to GREASE is exciting! Make sure to take ownership of the process to ensure speedy processing
- Maintainers are busy and it is our responsibility to respond. We do though ask you to respond quickly when we ask for changes, make comments or ask questions. We will respond by our time line from the previous point, But we will expect you to interact back if required