Skip to content

sghall/bundle-inspector-webpack-plugin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bundle-inspector-webpack-plugin

Under development. Feedback welcome.

See a demo in your browser - NOT mobile friendly

CLI:

npm install -g bundle-inspector-webpack-plugin

Basic usage:

bundle-inspector-webpack-plugin /path/to/webpack/stats.json

How do I get JSON stats from webpack?

webpack --json > stats.json

See a demo:

bundle-inspector-webpack-plugin --demo

Webpack Plugin:

npm install bundle-inspector-webpack-plugin --save-dev

CJS Import:

const BundleInspector = require('bundle-inspector-webpack-plugin');

// Add it to the plugins in your webpack config...
// ...
plugins: [new BundleInspector()]
// ...

ES6 Import:

import BundleInspector from 'bundle-inspector-webpack-plugin';

// Add it to the plugins in your webpack config...
// ...
plugins: [new BundleInspector()]
// ...

The server listens via websockets so it will update as you're developing. The 3D graph can be resource intensive, so it may be better to keep it on the treemap while your working. It will refresh to the page you're currently on each time webpack updates.

Shoutouts

Uses the data processing from the awesome Webpack Bundle Analyzer. The app is built using Create React App. Lot of ideas and inspiration from Bundle Buddy.

Data Views:

3D Force Directed Graph

Uses:

d3-force-3d - 3D layout

three.js - JavaScript WebGL

subunit - WebGL Selections

Zoomable Treemap

Uses:

d3 - Data Visualization Library

Uses the zoomable treemaps concept by Mike Bostock.

Screenshots:

Bundle Inspector Bundle Inspector

Roadmap

It's early days for this project. Lots of work to be done on the visualizations to make them more helpful.

Have a suggestion/idea/comment/criticism? Open an issue.

Logo image created by Oksana Latysheva from the Noun Project