Nomenclature Processing Machine

npm

Need private packages and team management tools?Check out npm Orgs. »

webpack-bundle-tracker

0.4.3 • Public • Published

Webpack Bundle Tracker Join the chat at https://gitter.im/owais/webpack-bundle-tracker

Spits out some stats about webpack compilation process to a file.


Install

npm install --save-dev webpack-bundle-tracker
yarn add --dev webpack-bundle-tracker

Usage

var BundleTracker = require("webpack-bundle-tracker");
module.exports = {
    context: __dirname,
    entry: {
        app: ["./app"]
    },
 
    output: {
        path: require("path").resolve("./assets/bundles/"),
        filename: "[name]-[hash].js",
        publicPath: "http://localhost:3000/assets/bundles/"
    },
 
    plugins: [
        new BundleTracker({
            path: __dirname,
            filename: "./assets/webpack-stats.json"
        })
    ]
};

./assets/webpack-stats.json will look like,

{
    "status": "done",
    "chunks": {
        "app": [
            {
                "name": "app-0828904584990b611fb8.js",
                "publicPath": "http://localhost:3000/assets/bundles/app-0828904584990b611fb8.js",
                "path": "/home/user/project-root/assets/bundles/app-0828904584990b611fb8.js"
            }
        ]
    }
}

In case webpack is still compiling, it'll look like,

{
    "status": "compiling"
}

And errors will look like,

{
    "status": "error",
    "file": "/path/to/file/that/caused/the/error",
    "error": "ErrorName",
    "message": "ErrorMessage"
}

ErrorMessage shows the line and column that caused the error.

And in case logTime option is set to true, the output will look like,

{
  "status":"done",
  "chunks":{
   "app":[{
      "name":"app-0828904584990b611fb8.js",
      "publicPath":"http://localhost:3000/assets/bundles/app-0828904584990b611fb8.js",
      "path":"/home/user/project-root/assets/bundles/app-0828904584990b611fb8.js"
    }]
  },
  "startTime":1440535322138,
  "endTime":1440535326804
}

By default, the output JSON will not be indented. To increase readability, you can use the indent option to make the output legible. By default it is off. The value that is set here will be directly passed to the space parameter in JSON.stringify. More information can be found here


Options

Name Type Default Description
path {String} '.' Output directory of bundle tracker JSON file .
filename {String} 'webpack-stats.json' Name of the bundle tracker JSON file.
publicPath {String} ? Override output.publicPath from Webpack config.
logTime {Boolean} false Output startTime and endTime properties in bundle tracker JSON file.

install

npm i webpack-bundle-tracker

Downloadsweekly downloads

52,769

version

0.4.3

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
Report a vulnerability