es6-rb-mc-k-i-boilerplate
v0.1.2
Published
Full ES6 module boilerplate with rollup/babel, mocha/chai/karma/istanbul, coveralls, travis, conventional commit, pre-push and pre-commit check
Downloads
8
Readme
ES6 module boilerplate with full ES6 test suits and coverage
- ES6 sources
- transpiled with babel (to dist/es5/*)
- bundled with rollup (to dist/bundles/*)
- ES6 tests with mocha and chai (runned directly from es6 with babel-register)
- karma runner with on-the-fly rollup/babel bundling
- Code coverage with istanbul and nyc directly from ES6 tests and sources (no bundle)
- coveralls reporting
- standard-version for semver management and Changelog.md generation.
- travis.ci config file
- esdoc config file
- eslint ES6 base config for src and test
- husky easy git hooks with already define precommit, prepush and commitmsg hook
- validate-commit-msg : commit message format precommit validation
- commitizen: commit message generation tools
Usage
clone this repo then :
> npm i
or
> yarn
then :
- build :
> npm run build
- test :
> npm test
- karma :
> npm run karma
- cover :
> npm run cover
- coveralls reporting :
> npm run coveralls
(don't forget to add your .coveralls.yml with your api_key) - es5-watch :
> npm run es5-watch
- bundles-watch :
> npm run bundles-watch
- sem-ver and changelog generation :
> npm run release
- commitizen :
> npm run cmtz
- hand validation of commit messages :
> npm run commitmsg
Produced outputs
- dist/es5/* : commonjs unbundled files (transpiled with babel)
- dist/bundles/index.js : cjs module
- dist/bundles/index.min.js : cjs module minified with uglifyjs
- dist/bundles/index.mjs : ES module
For coveralls
Travis is configured to run coveralls by default.
So either you remove coveralls run in travis config file, or add a .coveralls.yml with your "repo_token: ......" before pushing to travis (after a first manual npm run coveralls
).
For Commit Message Validation
Format is based on angular spec which has become conventional commit
(https://github.com/commitizen/cz-conventional-changelog)
Licence
The MIT License
Copyright 2017 (c) Gilles Coomans
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.