First, read our code of conduct. By participating, you are expected to uphold this code.
- Read the
README
file. - Install the project on your machine.
- Launch tests (if there're any).
- Check if there's no "easy" task to take from the issues list.
- While this may look surprising at first, you should create your tests before doing any code-related work.
- An atomic commit is:
- one irreducible "type" (see the complete list below)
- generally small therefore faster to comprehend
- ease the review for finding typos or bugs.
- Try to describe the "why" vs the "what" in your commit messages.
- Use
git add -p
beforegit commit
, it's always better to make a review of your changes by yourself before other can see your code.
- Don't forget to launch the test runner before creating the Pull Request
- Write your PR based on the template
- Request a review to at least 2 people
- You're encourage to rewrite your
git
commit history if you got redundant commits for example.
- You need at least one "approved" review to get your code merged into the "master" branch
- If approved, it's the reviewer responsability to merge your PR.
- If some changes are requested, you'll code the fixes and then add it to your commit history using
git fixup
- After commiting your fixups, it's best to add the "status:need-rebase" label so reviewers will not accidently merged your PR
- If your fixups are approved then it's your responsability to merge your PR since you need to rewrite the history (using
git rebase --autosquash
).
- Use the angular commit style
- commit prefixes explanation:
chore
: everything related to maintenance around the code (gulp, travis, fixtures, etc)docs
: related to documentation (README, code comments, etc)feat
: new functionalityfix
: bugfix(es)refactor
: code improvement, removal of uneeded piecesstyle
: whitespace changestest
: code used for tests (unit & functional)
- Use an editorconfig plugin for your IDE.
- Use an eslint plugin for your IDE.
- Use github-flavoured markdown.
- Use direct phrases, omit needless words and follow this guide.
👍🎉 Happy coding! 🎉👍