Webpack is a front-end tool to build JavaScript module scripts for browsers.
It can be used similar to Browserify, and do much more.
$ browserify main.js > bundle.js # be equivalent to $ webpack main.js bundle.js
Webpack needs a configuration file called webpack.config.js
which is just a CommonJS module.
// webpack.config.js module.exports = { entry: './main.js', output: { filename: 'bundle.js' } };
After having webpack.config.js
, you can invoke Webpack without any arguments.
$ webpack
Some command-line options you should know.
webpack
– building for developmentwebpack -p
– building for production (minification)webpack --watch
– for continuous incremental buildingwebpack -d
– including source mapswebpack --colors
– making building output pretty
You could customize scripts
field in your package.json file as following.
// package.json { // ... "scripts": { "dev": "webpack-dev-server --devtool eval --progress --colors", "deploy": "NODE_ENV=production webpack -p" }, // ... }
$ npm i -g webpack webpack-dev-server
Then, clone the repo.
$ git clone https://github.com/xxxx.git
Install the dependencies.
$ cd webpack-demos $ npm install
Now, play with the source files under the repo's demo* directories.
$ cd demo01 $ npm run dev
If the above command doesn't open your browser automatically, you have to visit http://127.0.0.1:8080 by yourself.