|
| 1 | +# How to contribute |
| 2 | + |
| 3 | +Community involvement is essential to the success of [El.js][eljs] and the rest of the Hanzo ecosystem. |
| 4 | +To make changes and get them into the library, here are some guidelines to make that process |
| 5 | +smooth for all involved. |
| 6 | + |
| 7 | +## Reporting issues |
| 8 | + |
| 9 | +To report a bug, request a feature, or even ask a question, make use of the GitHub Issues |
| 10 | +section for [El.js][issues]. When submitting an issue please take the following steps: |
| 11 | + |
| 12 | +1. **Seach for existing issues.** Your question or bug may have already been answered or fixed, |
| 13 | +be sure to search the issues first before putting in a duplicate issue. |
| 14 | + |
| 15 | +2. **Create an isolated and reproducible test case.** If you are reporting a bug, make sure you |
| 16 | +also have a minimal, runnable, code example that reproduces the problem you have. |
| 17 | + |
| 18 | +3. **Include a live example.** After narrowing your code down to only the problem areas, make use |
| 19 | +of [jsFiddle][fiddle], [jsBin][jsbin], or a link to your live site so that we can view a live example of the problem. |
| 20 | + |
| 21 | +4. **Share as much information as possible.** Include browser version affected, your OS, version of |
| 22 | +the library, steps to reproduce, etc. "X isn't working!!!1!" will probably just be closed. |
| 23 | + |
| 24 | +## Contributing Changes |
| 25 | + |
| 26 | +### Setting Up |
| 27 | + |
| 28 | +To make changes you will need to take a few steps, which we've outlined below: |
| 29 | + |
| 30 | +1. Ensure you have Node.js installed. You can download Node.js from [nodejs.org][node]. Because |
| 31 | +El.js uses modern JS features, you will need a modern version of Node. v7+ is recommended. |
| 32 | + |
| 33 | +2. Fork the [El.js][el] repository, if you are unsure how to do this GitHub has a guides |
| 34 | +for the [command line][fork-cli] and for the [GitHub Client][fork-gui]. |
| 35 | + |
| 36 | +3. Next, run `npm install` from within your clone of your fork. That will install dependencies |
| 37 | +necessary to build El.js. |
| 38 | + |
| 39 | + |
| 40 | +### Making a Change |
| 41 | + |
| 42 | +Your change should be made directly to the branch in your fork, or to a branch in your fork made off of master. |
| 43 | + |
| 44 | +### Submitting Your Change |
| 45 | + |
| 46 | +After you have made and tested your change, commit and push it to your fork. Then, open a Pull Request |
| 47 | +from your fork to the main El.js repository. |
| 48 | + |
| 49 | +## Code Style Guide |
| 50 | + |
| 51 | +- Use 2 spaces for tabs, never tab characters. |
| 52 | +- No trailing whitespace, blank lines should have no whitespace. |
| 53 | + |
| 54 | +[eljs]: https://github.com/hanzo.io/el.js |
| 55 | +[issues]: https://github.com/hanzo-io/el.js/issues |
| 56 | +[el]: https://github.com/hanzo-io/el.js |
| 57 | +[fiddle]: http://jsfiddle.net |
| 58 | +[jsbin]: http://jsbin.com/ |
| 59 | +[node]: http://nodejs.org |
| 60 | +[fork-cli]: https://help.github.com/articles/fork-a-repo/ |
| 61 | +[fork-gui]: https://guides.github.com/activities/forking/ |
| 62 | + |
| 63 | +## Contributor Code of Conduct |
| 64 | +[Contributor Covenant, version 1.4](http://contributor-covenant.org/version/1/4) |
| 65 | + |
0 commit comments