Fast, compact and lightweight
TypeScript 2.1boilerplate that export a single file.
This boilerplate uses
TypeScript 2.1 by default, and
Rollup + Buble to bundle a flat production bundle.
Mocha + Chai are used as the testing stack. Unit tests can be run with or without
Estimated bundle time:
0.3 ms. (Depends on your computer.)
- Statically typed build system for working with Typescript 2.0 Pre
- Consistent code style with TSLint.
- Coverage report with Istanbul
- Optional JSDOM
- Rollup for bundling
- Bublé as the ES2015 compiler
- Mocha & Chai de facto standard
- Environment variabels for production and development
- Easy debugging
The only development dependency of this project is Node.js. So just make sure you have it installed. Then type few commands known to every Node developer...
git clone --depth 1 https://github.com/kflash/rachelle.gitcd rachelle# install the project's dependenciesnpm i# bundle both a development and production bundlenpm build
... and boom! You have it all setup for you!
build- creates a development and production bundle
build:dev- creates a development bundle
build:prod- creates a production bundle
coverage- shows the coverage report
clean- remove the dist, coverage and build folders
clean:build- remove the build folder
test- run all unit tests in the node.js environment
test:jsdom- run all unit tests in the node.js environment with jsdom
lint- validates all source and test files
lint-src- validates all source files
lint-tests- validates all test files
release- build the library, push to NPM and Github
watch:tests- run all unit tests and watch files for changes
watch:build- watch your TypeScript files and trigger recompilation on changes
update:dependencies- update npm packages
You can simply use this project as a drop-in replacement for any TypeScript projects if you need something fast, and lightweight. Just replace the
./test folder and it should work right out of the box.
npm run build to bundle your source files. The
TypeScript declarations for your bundle will be in the
The coverage reports are generated with
Istanbul, and delivered to
Istanbul generate a 100% correct coverage report. See the source and test files and do a comparison.
Can this boilerplate be used together with React?
Bublé supports JSX, and in fact React are now swapping out Browserify with Rollup. You can read more about it here -
React - PR #7178.
How to use this boilerplate with Karma?
NPM install the
Karma package and type
karma init on the command line. The test files are pre-transpilled by
TypeScript and located here
Karma preprocessor, and the NPM packages you may need.
Is JSX supported?
JSX. By default
Bublé are configured to be used with
React. You may change this inside the
Why is everything so strict?
What do you mean? The
TypeScript compiler have it's rules to follow, as well as
TSLint. Everytime you bundle, run a watch task or
run the unit tests, things get validated. You can't compile the source code or run unit tests if there are errors in your code.
When should I consider using this boilerplate?
You may consider this is if you need a lightweight, fast boilerplate that export a single file.
What's the browser compatibility?
As a rule of thumb,
TypeScript works best in
IE9 and above.
Do I need to customize this boilerplate?
Nope. You only have to change the name on the boilerplate in the