billboard.js is opened to everyone and we're welcoming for any kind of contribution. We believe that our project can grow with your interests helping others' necessities.
billboard.js has several style guidelines to follow. Before your start, please read attentively below instructions.
To maintain the code style, we adopted ESLint to maintain our code quality. The rules are modified version based on Airbnb JavaScript Style Guide.
billboard.js use formatted commit logs for many different purposes (like creating CHANGELOG, ease history searching, etc.). To not break, you'll be forced to follow our commit log guidelines. Before your commit/push, make sure following our commit log guidelines.
The outline is as below:
<type>(<module>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>
-
- feat: A new feature
- fix: A bug fix
- docs: Documentation only changes
- style: Changes that do not affect the meaning of the code. Such as white-space, formatting, missing semi-colons, etc.
- refactor: A code change that neither fixes a bug nor adds a feature
- test: Adding missing tests. Changing tests.
- chore: Changes to the build process or tools and libraries such as documentation generation
- skip: For commits made by after the 1st commit. Usually for applying code review changes.
A short descriptive message which commit consists.
At the end preferably(or should) contain related github issue number referencing by Ref #ISSUE-NO
.
ex) When the commit is about issue number 20, then
Ref #20
Example commit of fixing a bug:
Fix(Axis): Correct tick rendering
Update condition of tick to avoid unnecessary tick rendering
Ref #20
Example commit applying code review (after the 1st commit)
Note: Commit log starting with
skip:
type will be ignored by commit hook constraint.
skip: Applied the review
Steps to submit your pull request:
- Fork
billboard.js
on your repository - Create new branch from your billboard.js master branch (and be sure always to be up-to-date)
- Do your work
- Create test code for your work (when is possible)
- Run
npm run lint
for linting and code style check. (update until without any error or warnings) - Run test code by
npm test
ornpm test:chrome
to run the test on chrome browser. Make sure tests are all passed at least in latest version of Chrome(mobile/desktop). - Write commit log following convention and push to your repository branch.
- Create a new PR from your branch to billboard.js.
- Wait for reviews. When your contribution is well enough to be accepted, then will be merged to our branch.
- All done!
By contributing to billboard.js, you're agreeing that your contributions will be licensed under its MIT license.