beerxml v1.0.6
ES6 library starter
A boilerplate for a universal (Node, web, UMD) ES6 library.
Quick usage
- Clone this repo.
- Change all relevant entries in
package.json
andREADME.md
, so they match your new shiny library. - Run
npm install
to install dev dependencies. - Write your ES6 code in
src
folder. - Write your ES6 tests in
test
folder. - Run
npm run build
to build for node. This will compile to ES5, minify, and output the result tolib
folder. - Run
npm run build-web
to build and pack the files for the web. This will output the result todist
folder. Run
npm publish
to pulish to the world.
(Or, if you don't need Webpack bundling, you can use the even lighter ES6 starter).
Detailed overview
Installation
After cloning this repository, make sure to change all the relevant entries in package.json
so they match your library.
npm install
Build for npm
npm run build
This will:
1. Run Webpack starting from the entry point file (src/library.js
, can be configured)
2. Convert all files in src
folder from ES6 to ES5
3. According to the bundle-node
flag in package.json
, it will either:
1. Leave them as separate files, or -
2. Minify and bundle them using Webpack, without their node_modules
dependencies
4. Output the result to the lib
folder
Build for web
npm run build-web
This will:
1. Run Webpack starting from the entry point file (src/library.js
, can be configured)
2. Convert all files from ES6 to ES5
3. Minify them, including all of their module dependencies, as a UMD module (so the file will be self-contained)
4. Output the file to the dist
folder
Test
npm run test
Configuration
In package.json
, change all the relevant entries so they match your library.
Under the section library
, you can configure:
1. Library name (defaults to "Library"
)
2. Webpack entry point (defaults to library.js
)
3. Dist folder for Node (defaults to lib
)
4. Dist folder for Web (defaults to dist
)
5. Choose whether to bundle for Node (defaults to true
)
License
MIT