Thanks for being willing to contribute!
Working on your first Pull Request? You can learn how from this free series How to Contribute to an Open Source Project on GitHub
- Fork and clone the repo
$ npm install
to install dependencies$ npm start validate
to validate you've got it working- Create a branch for your PR
This project uses [nps
][nps] and you can run npm start help
to see what
scripts are available.
Tip: Keep your
master
branch pointing at the original repository and make pull requests from branches on your fork. To do this, run:git remote add upstream https://github.com/sezna/nps.git git fetch upstream git branch --set-upstream-to=upstream/master master
This will add the original repository as a "remote" called "upstream," Then fetch the git information from that remote, then set your local
master
branch to use the upstream master branch whenever you rungit pull
. Then you can make all of your pull request branches based on thismaster
branch. Whenever you want to update your version ofmaster
, do a regulargit pull
.
This project follows the all contributors specification. To add yourself to the table of contributors on the README.md, please use the automated script as part of your PR:
npm start contributors.add
Follow the prompt. If you've already added yourself to the list and are making a new type of contribution, you can run it again and select the added contribution type.
This project uses semantic-release
to do automatic
releases and generate a changelog based on the commit history. So we follow
a convention for commit messages. You don't have to follow this
convention if you don't like to. Just know that when we merge your commit, we'll
probably use "Squash and Merge" so we can change the commit message :)
Please make sure to run the tests before you commit your changes. You can run
npm start test.update
which will update any snapshots that need updating.
Make sure to include those changes (if they exist) in your commit.
There are git hooks set up with this project that are automatically installed
when you install dependencies. They're really handy, but are turned off by
default (so as to not hinder new contributors). You can opt into these by
creating a file called .opt-in
at the root of the project and putting this
inside:
pre-commit
Please checkout the the open issues
Also, please watch the repo and respond to questions/bug reports/feature requests! Thanks!