This covers contributing to the main code. For adding to the documentation see the Writing Docs section.

We love pull requests from everyone. By participating in this project, you agree to abide by the contributor coventant suggested code of conduct.

Do make sure to run tests and generally BE PREPARED to have your code vetted and checked. Do NOT submit code you would not be prepared to defend or maintain, unless you are fixing a bug.

Push to your fork and submit a pull request.

At this point you're waiting on us. We like to at least comment on pull requests within four business days (and, typically, three business day). We may suggest some changes or improvements or alternatives.

Some things that will increase the chance that your pull request is accepted:

  • Write tests.
  • Follow the commit-style below.

Commit Style

A sample good commit is:

fileName: Thing I did
Some subHeading things

So this change was to do that thing I thought was good. Also there was this
other person who thought so too, so then I ate a sandwich and we got the code
done. I am writing this but really, honestly, two people did this.

Co-authored-by: Joel Doe <>

As is evident, the commit should clearly have:

  • The name of the file, or the topic or the subject you have changed or the namespace or the functionality you have added something:
  • A line describing something:
  • An (optional) subheading with more details
  • An (optional) paragraph or essay on why the change was done and anything else you want to share with the devs.
  • Co-authorship IS MANDATORY if applicable. Even if you just had a sandwich with the other person. It won't kill you to share, or to write that.