Skip to content

Latest commit

 

History

History
89 lines (67 loc) · 2.94 KB

CONTRIBUTING.md

File metadata and controls

89 lines (67 loc) · 2.94 KB

Contributing to Natural-script

👍🎉 First off, thanks for taking the time to contribute! 🎉👍

Found an Issue?

Thank you for reporting any issues you find. We do our best to test and make natural-script as solid as possible, but any reported issue is a real help.

Please follow these guidelines when reporting issues:

  • Provide a title in the format of <Error> when <Task>
  • Tag your issue with the tag bug
  • Provide a short summary of what you are trying to do
  • Provide the log of the encountered error if applicable
  • Provide the exact version of natural-script.
  • Be awesome and consider contributing a pull request

Want to contribute?

You consider contributing changes to natural-script – we dig that! Please consider these guidelines when filing a pull request:

  • Follow the Coding Rules
  • Follow the Commit Rules
  • Make sure you rebased the current master branch when filing the pull request
  • Squash your commits when filing the pull request
  • Provide a short title with a maximum of 100 characters
  • Provide a more detailed description containing _ What you want to achieve _ What you changed _ What you added _ What you removed
  • For significant changes, post also an issue before to know if your idea has a chance to be accepted
  • Consider your development for windows, linux and macOS platforms at the same time because having a module compatible with all platforms is the main concern of natural-script.

Coding Rules

To keep the code base of commitlint neat and tidy the following rules apply to every change

  • prettier is king
  • eslint is awesome
  • Favor micro library over swiss army knives (rimraf, ncp vs. fs-extra)
  • Be awesome

use commands yarn lint and yarn format to be sure your code respect coding rules.

Commit Rules

To help everyone with understanding the commit history of commitlint the following commit rules are enforced.

  • squash your commits in one commit
  • conventional commits
  • husky commit message hook available
  • present tense
  • maximum of 100 characters
  • for bugs, includes the github tag of the issue in the description.
  • message format of $type($scope): $message

These are the authorized types:

  • build
  • ci
  • chore
  • docs
  • feat
  • fix
  • perf
  • refactor
  • revert
  • style
  • test

Versioning

natural-script use standard-version to handle versioning automatically. So you just need to follow commit rules and once the maintainer will want to
release a version, he will use commands:

git pull origin master
yarn release
git push --follow-tags origin master && npm publish

Please do not use these commands if you don't have write capabilities on the repository. We want to have versions synchronized with npm so these commands should be executed in the same time.

May the force be with you !!