1 | # How to contribute to egjs-flicking
|
2 | egjs-flicking is opened to everyone and we're welcoming for any kind of contribution.
|
3 | We believe that our project can grow with your interests helping others' necessities.
|
4 |
|
5 | ## Style Guide
|
6 |
|
7 | egjs-flicking has several style guidelines to follow.
|
8 | Before your start, please read attentively below instructions.
|
9 |
|
10 | ### Linting and Code Conventions
|
11 | We adopted [ESLint](http://eslint.org/) to maintain our code quality. The [rules](https://github.com/naver/eslint-config-naver/tree/master/rules) are modified version based on [Airbnb JavaScript Style Guide](https://github.com/airbnb/javascript).
|
12 | All rules are described at [.eslintrc](.eslintrc) file.
|
13 |
|
14 | ### Commit Log Guidelines
|
15 | egjs-flicking use commit logs in many different purposes (like creating CHANGELOG, ease history searching, etc.).
|
16 | To not break, you'll be forced to follow our commit log guidelines.
|
17 | Before your commit/push, make sure following our commit log guidelines.
|
18 |
|
19 | The outline is as below:
|
20 | ```
|
21 | <type>(<module>): <subject>
|
22 | <BLANK LINE>
|
23 | <body>
|
24 | <BLANK LINE>
|
25 | <footer>
|
26 | ```
|
27 |
|
28 | - **Types**
|
29 | - **feat**: A new feature
|
30 | - **fix**: A bug fix
|
31 | - **docs**: Documentation only changes
|
32 | - **style**: Changes that do not affect the meaning of the code. Such as white-space, formatting, missing semi-colons, etc... It also possible to change JSHint, JSCS rules of the code.
|
33 | - **refactor**: A code change that neither fixes a bug nor adds a feature
|
34 | - **test**: Adding missing tests. Changing tests.
|
35 | - **demo**: Adding missing demos. Changing demos.
|
36 | - **chore**: Changes to the build process or tools and libraries such as documentation generation
|
37 |
|
38 | [See More Commit Log Guidelines](https://github.com/naver/egjs/wiki/Commit-Log-Guidelines)
|
39 |
|
40 | ## How to submit Pull Requests
|
41 | Steps to submit your pull request:
|
42 |
|
43 | 1. Fork `egjs-flicking` on your repository
|
44 | 2. Create new branch from your egjs master branch (and be sure always to be up-to-date)
|
45 | 3. Do your work
|
46 | 4. Create test code for your work (when is possible)
|
47 | 5. Run `npm run lint` for linting and Code Conventions (update until without any error or warnings)
|
48 | 6. Run test code by `npm run test OR npm run test:chrome`.
|
49 | Make sure tests are all passed at least in Chrome(latest desktop version)
|
50 | 8. Write commit log following convention and push to your repository branch.
|
51 | 9. Create a new PR from your branch to egjs-flicking.
|
52 | 10. Wait for reviews.
|
53 | When your contribution is well enough to be accepted, then will be merged to our branch.
|
54 | 11. All done!
|
55 |
|
56 |
|
57 | ## License
|
58 | By contributing to egjs-flicking, you're agreeing that your contributions will be licensed under its [MIT](https://opensource.org/licenses/MIT) license. |
\ | No newline at end of file |