Minimal tested and fully functional NPM package template project for ES6+ Javascript.
This template is intended to allow you to start developing immediatly with a working set of tools and scripts that play well together.
It is little opinionated to the point, that only the most basic tools are integrated. If you want a different flavour you can fork this project and easily replace the tools or add new ones.
- 🗪 Babel for transpiling
- 🪄 Standard for linting
- ⚗️ Mocha and Chai for testing
- 🔍 c8 for code coverage
- 📚 JSDoc for documentation and jsdoc-to-markdown to create docs as markdown files
- ⚡ GitHub actions for continuous integration
- 📦 Rollup for bundling
All tools are defined as dev-dependencies
!
This template repository has all relevant GitHub community standards implemented:
- Description
- README
- Code of conduct
- Contributing
- License
- Security policy
- Issue templates
- Pull request template
First, create a new repository with this repository as template or fork the repository and clone it to your local machine.
From here, simply create your Js files in the ./lib
folder and add the tests in the test
folder.
We provide a default set of tools via npm scripts. Run a script via
$ npm run <command>
where <command>
is one of the following available commands:
command | description | output |
---|---|---|
lint |
runs the linter in read-mode | |
lint:fix |
runs the linter; fixes minor issues automatically | |
test |
runs the tests once | |
test:watch |
runs the tests; re-runs them on code changes | |
test:coverage |
runs the tests once and creates a coverage report | coverage |
docs |
creates API documentation | docs |
build |
builds the bundles for several target platforms | dist |
build:full |
runs build and docs |
see above |
We provide an extensive contribution guideline and a code of conduct to help you in making your contribution a success!
Please read our security policy to get to know which versions are covered.
MIT, see license file