rollup-ts-library-boilerplate
v1.0.3
Published
A library template writing by ts
Downloads
3
Maintainers
Readme
Rollup Ts Library Boilerplate
A starter project that makes creating a TypeScript library extremely easy.
Usage
The version of your node.js should be greater than v12
git clone [email protected]:x-cold/rollup-ts-library-boilerplate.git YOURFOLDERNAME
cd YOURFOLDERNAME
# Run npm install and write your library name when asked. That's all!
npm install
Features
- Zero-setup. After running
npm install
things will setup for you :wink: - RollupJS for multiple optimized bundles following the standard convention and Tree-shaking
- Tests, coverage and interactive watch mode using Jest
- Docs automatic generation and deployment to
gh-pages
, using TypeDoc - Automatic types
(*.d.ts)
file generation - (Optional) Automatic releases and changelog, using standard-version, Commitizen, Conventional changelog and Husky (for the git hooks)
- Deploy your docs to github pages via gh-pages branch
Importing library
You can import the generated bundle to use the whole library generated by this starter:
import myLib from 'mylib'
Additionally, you can import the transpiled modules from dist/lib
in case you have a modular library:
import something from 'mylib/dist/lib/something'
NPM scripts
npm lint
: Eslint codenpm lint:fix
: Eslint code and try to fix problemsnpm start
: Realtime complie codenpm run docs
: Generate type documentsnpm run build
: Build ths dist productsnpm run release
: The same asnpm run release:patch
npm run release:patch
: Automatically upgrade patch versioin and update CHANGELOG.mdnpm run release:minor
: Automatically upgrade minor versioin and update CHANGELOG.mdnpm run release:major
: Automatically upgrade major versioin and update CHANGELOG.mdnpm run test
: Run test suite via jest with code coveragenpm run test:watch
: Run test suite in interactive watch modenpm run test:prod
: Run linting and generate coveragenpm run deploy
: Clean docs directory and rebuild docs pages
Git Hooks
There is already set a precommit
hook for formatting your code with Eslint and Commitlint :nail_care:
By default, there are two disabled git hooks. They're set up when you run the npm i
script. They make sure:
- You follow a conventional commit message