Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
56 lines (39 sloc) 3.1 KB


How to contribute code

1. Decide what to work on

Then, tell folks what you'll be working on, and:

2. FORK this repo

Everyone must follow the rules below (inspired by the C4.1 process) to submit code (documentation may be edited directly by maintainers):

  1. Always work in your own fork and submit pull requests (PRs) to master.
  2. Always add/update tests for any new/modified functionality. (❗️)
  3. Always make sure your PR passes all tests (grunt test).
  4. Always ensure your PR adheres to the Contribution Policy described below.

3. Follow this Contribution Policy

This contribution policy will evolve over time. For now it is based on a slightly modified subset of C4.1.

Licensing and Ownership

  1. All contributions to the project source code ("patches" or "pull requests") SHALL use the same license as the project.
  2. All patches are owned by their authors. There SHALL NOT be any copyright assignment process.
  3. Each Contributor SHALL be responsible for identifying themselves in the project Contributor list.

Pull Request Requirements (❗️)

  1. A PR SHOULD be a minimal and accurate answer to exactly one identified and agreed problem.
  2. A PR SHOULD follow the boy scout rule: leave the code cleaner than you found it when the refactor effort is not too big.
  3. A PR SHALL NOT include non-trivial code from other projects unless the Contributor is the original author of that code.
  4. A PR MUST pass all tests on at least the principle target platform.
  5. A PR MUST include new tests for any new functionality introduced.
  6. A PR SHOULD avoid "callback-hell" style and instead prefer "async/await" style.
  7. A PR MUST follow the requirements spelled out in this project's Style Guide.

How to submit an issue