We want to make contributing to this project as easy and transparent as possible, whether it's:
- Reporting a bug
- Discussing the current state of the code
- Submitting a fix
- Proposing a new features
- Becoming a maintainer
Pull requests are the best way to propose changes to the codebase (we use Github Flow). We actively welcome your pull requests:
- Fork the repo and create your branch from
master
. - If you've added code that should be tested, add tests.
- If you've changed APIs, update the documentation.
- Ensure the test suite passes.
- Make sure your code lints.
- Issue that pull request!
Report bugs using Github issues
We use GitHub issues to track public bugs. Report a bug by opening a new issue; it's that easy!
Below are two bug report templates that you can use for reference:
Great Bug Reports tend to have:
- A quick summary and/or background
- Steps to reproduce with sample code
- What you expected would happen
- What actually happens
- Notes (why you think this might be happening, or stuff you tried that didn't work)
- We indent using two spaces (soft tabs)
- We ALWAYS put spaces after list items and method parameters (
[1, 2, 3]
, not[1,2,3]
), around operators (x += 1
, notx+=1
), and around hash arrows. - This is open source software. Consider the people who will read your code, and make it look nice for them. It's sort of like driving a car: Perhaps you love doing donuts when you're alone, but with passengers the goal is to make the ride as smooth as possible.
- Always use cwd-relative paths rather than root-relative paths in image URLs in any CSS. So instead of url('/images/blah.gif'), use url('../images/blah.gif').
Make sure to reference our code of conduct for an overview of the community guidelines for this project.
By contributing, you agree that your contributions will be licensed under its MIT License.
This document was adopted from the following sources:
opengovernment's contributing template
briandk's contributing template