Package Exports
- bundle-stats
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (bundle-stats) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Bundle Stats
BundleStats is analyzing the webpack stats and is providing information about what changed and what is going to be deployed.
- Bundle size and totals by file type(css, js, img, etc)
- Cache invalidation, Initial JS/CSS and other bundle specific metrics
- Assets report (entrypoint, initial, types, changed, delta)
- Modules report (changed, delta) by chunk
⭐ Side by side comparison for multiple jobs
Table of Contents
1. Webpack plugin
Install
npm install --dev bundle-stats
or
yarn add --dev bundle-stats
Webpack configuration
// webpack.config.js
const { BundleStatsWebpackPlugin } = require('bundle-stats');
module.exports = {
...,
plugins: [
new BundleStatsWebpackPlugin()
]
}
BundleStatsWebpackPlugin(options)
html
- output html report (defaulttrue
).json
- output json report (defaultfalse
).outDir
- output directory relative tooutput.path
(default''
).stats
- Webpack stats options default:{ stats: { context: WEBPACK_CONTEXT, assets: true, entrypoints: true, chunks: true, modules: true, } }
2. CLI
Install as global
npm install -g bundle-stats
or
yarn global add bundle-stats
Install as dev dependency
npm install --dev bundle-stats
or
yarn add --dev bundle-stats
Webpack configuration
The CLI is consuming the Webpack stats json. The following stats options are required:
{
stats: {
assets: true,
entrypoints: true,
chunks: true,
modules: true
}
}
Read more about Webpack stats configuration
Usage
$ bundle-stats -h
Usage: bundle-stats OPTIONS [WEBPACK_STATS_FILE]...
Options:
--html Save HTML report [boolean] [default: true]
--json Save JSON data [boolean] [default: false]
--demo Generate demo reports [default: false]
-d, --out-dir Output directory [default: "./dist"]
-h, --help Show help [boolean]
-v, --version Show version number [boolean]
$ bundle-stats --html --json __fixtures__/webpack-stats-0.json __fixtures__/webpack-stats-1.json
✔ Read Webpack stat files
✔ Gather data
✔ Generate reports
✔ Save reports
Reports saved:
- ./dist/bundle-stats.html
- ./dist/bundle-stats.json
3. Standalone web application
Use https://compare.relative-ci.com to compare Webpack/Lighthouse/Browsertime stats.
4. ⚡ Running on CI
Continuous monitoring with BundleStats on CI:
- Github Checks integration
- support for all major CI services (Travis CI, Circle CI, Jenkins, Gitlab CI, Codeship, etc)
- free for OpenSource