| 1 | ## How to contribute |
| 2 | |
| 3 | [![JavaScript Style Guide](https://cdn.rawgit.com/standard/standard/master/badge.svg)](https://github.com/standard/standard) |
| 4 | This repo use standard js style, please use it if you want to contribute |
| 5 | Take tasks from todo list, develop a new feature or fix a bug and do a pull request. |
| 6 | Another thing that you can do to contribute is to build something on top of ring-election and link ring-election to your project |
| 7 | |
| 8 | Please ask your PR to be merged on **master** branch. |
| 9 | |
| 10 | **How to run tests** |
| 11 | |
| 12 | **Unit tests and Coverage** |
| 13 | |
| 14 | ```bash |
| 15 | npm run test |
| 16 | npm run coverage |
| 17 | ``` |
| 18 | |
| 19 | **How to check if your new code is standard style** |
| 20 | |
| 21 | ```bash |
| 22 | npm run lint |
| 23 | ``` |
| 24 | |
| 25 | **How to lint and format (with prettier) your code** |
| 26 | |
| 27 | ```bash |
| 28 | npm run format && npm run lint:fix |
| 29 | ``` |
| 30 | |
| 31 | ### Project pillars |
| 32 | |
| 33 | Please consider our pillars before to start change the project |
| 34 | |
| 35 | - Performance :racehorse: |
| 36 | - Security :bank: :cop: |
| 37 | - No runtime dependencies :white_check_mark: (until now we don't have any exception to that) |
| 38 | - Easy to use :couple: |
| 39 | - Code quality :octocat: |