All input is good input! Contributing to this project should be as easy and transparent as possible, whether it's:
- Reporting a bug
- Discussing the current state of the code
- Submitting a fix
- Proposing new features
- Becoming a maintainer
We use github to track pretty much everything: pull requests, feature discussion, and issue resolution.
We Use Github Flow
All code changes happen through pull requests
Pull requests are the best way to propose changes to the codebase. Any kind of idea or change is welcome.
- Fork the repo and create your branch from
develop
. - If you've added code that should be tested, add tests.
- If you've changed APIs, update the documentation.
- If you've added dependencies, note what they are and why they are needed.
- Make sure your code and tests run without errors. It's also helpful if you've done a regression check against other areas of the framework, but not strictly required.
In short, when you submit code changes, your submissions are understood to be under the same MIT License that covers the project. Feel free to contact the maintainers if that's a concern.
Report bugs using Github's issues
We use GitHub issues to track public bugs. Report a bug by opening a new issue.
Always included expected vs. actual behavior with supporting information such as screenshots, browser/OS versions, and the like. If you have a specific solution to the problem, call it out in a separate "proposed solution" portion of your issue.
The more detail, the less confusion!
If you're using a code editor, make sure it has plugins for prettier, eslint, and stylelint.
If you don't have plugins for your editor, run npm run prettify && npm run lint
to apply styling to both css and javascript before you commit changes.
This document was adapted from the open-source contribution guidelines for Facebook's Draft