yarn add global @friends-of-js/javascript-kit
# or
npm install -g @friends-of-js/javascript-kit
javascript-kit [directory]
- Support JavaScript and TypeScript languages
- Fully customizable
- TSlint and ESlint out of the box
- Modules for both Node.js and browser
- Browser modules with webpack
- Generate both CommonJS and ESNext modules for Node.js
- Autogenerated TypeScript defenitions
- Node.js tests with Mocha and Chai
- Browser tests with Karma, Mocha and Chai
- Code coverage for both TypeScript and JavaScript through Istanbul and nyc
- Sending code coverage to Codecov, Codeclimate, and Codacy
- TravisCI out of the box
- Autogenerated docs
- Publishing to github and npm after succesfull build
- Publishing release to github with generated changelog
- Git hooks for linting and testing before publishing
For a complete list of the commands available for your module, see the section "scripts" in generated package.json
Yarn | Npm | Make | Description |
---|---|---|---|
yarn build | npm run build | make build | Build CommonJS, ESNext modules and Browser bundle |
yarn lint | npm run lint | make lint | Lint your code with TSLint or ESLint |
yarn fix | npm run fix | make fix | Fix errors found by linter |
yarn test | npm run test | make test | Run tests |
yarn coverage | npm run coverage | make coverage | Run tests and generate code coverage reports |
yarn docs | npm run docs | make docs | Generate documentation |
yarn release.major | npm run release.major | make release.major | Create and publish new major release |
yarn release.minor | npm run release.minor | make release.minor | Create and publish new minor release |
yarn release.patch | npm run release.patch | make release.patch | Create and publish new patch release |
yarn commit | npm run commit | make commit | Interactively create conventional commit message |
Name | Description |
---|---|
src | Your source files placed here |
spec | Contains your tests files |
node_modules | Contains all your npm dependencies |
build | Scripts that responsible for building package |
build/browser | Scripts for building browser package |
build/module | Typescript configs for building CommonJS and ESNext modules |
build/declarations | Typescript definitions and config for building eclarations files |
lib | Generated package |
lib/module | Node module packages |
lib/module/commonjs | Commonjs node module using es5 features |
lib/module/esnext | Node module using es7 and esnext features |
lib/browser | Browser package generated by webpack |
coverage | Code coverage report files |
docs | Generated documentation |
@friends-of-js/javascript-kit © Dmitriy Romanov, released under the MIT License. Authored and maintained with help from contributors (list).