Nagging Mario's Princess

    TypeScript icon, indicating that this package has built-in type declarations

    2.0.0 • Public • Published

    rollup-plugin-analyzer NPM version js-standard-style Dependency Status Build Status

    Mad metrics for your rollup bundles, know all the things


    See what's bloating your bundle, how treeshaking has treated you, and other great stuff. Perfect for console printing an analysis of your bundle or integrating in your CI workflows.

    Comes in two scrumptious flavors:


    Adding as a plugin to your rollup config or build script will allow you to print a well formatted analysis to the console upon bundling or get a full analysis object for CI purposes.


    If using Rollup's CLI to bundle with no additional config, pass -c node:rollup-config-analyzer to print a well formatted analysis to your console.


    $ npm install --save-dev rollup-plugin-analyzer


    from rollup config

    import { plugin as analyze } from 'rollup-analyzer-plugin'
    const opts = {limit: 5, filter: [], root: __dirname}
    export default {
      entry: 'module.js',
      dest: 'index.js',
      format: 'cjs',
      plugins: [analyze(opts)]

    from build script

    import { rollup } from 'rollup'
    import { plugin as analyze } from 'rollup-analyzer-plugin'
    const opts = {limit: 5, filter: [], root: __dirname}
      entry: 'main.js',
      plugins: [analyze(opts)]


    logged to console on rollup completion

    Rollup File Analysis
    bundle size: 1.146 MB
    file: \node_modules\html5-history-api\history.js
    size: 38.502 KB
    percent: 3.36%
    dependents: 1
      - \app\modules\page.js
    file: \node_modules\pikaday\pikaday.js
    size: 34.683 KB
    percent: 3.03%
    dependents: 1
      - \app\helpers\transformer.js


    • stdout - optional
      • type: Boolean
      • default: false
      • description: Print to stdout (console.log) instead of stderr (console.error)
    • limit - optional
      • type: Number
      • default: null
      • description: Limit number of files to output analysis of, sorted by DESC size
    • filter - optional
      • type: Array | String
      • default: null
      • description: Filter to only show imports matching the specified name(s)
    • root - optional
      • type: String
      • default: process.cwd()
      • description: Application directory, used to display file paths relatively
    • hideDeps - optional
      • type: Boolean
      • default: false
      • description: Don't itemize dependents in the formatted output
    • writeTo - optional
      • type: Function
      • default: null
      • description: Callback to be invoked with formatted string
      • callback invoked with:
        • analysisString (String)
    • onAnalysis - optional
      • type: Function
      • default: null
      • description: Callback to be invoked with analysis object
      • notes: if this is set the formatted string will not be output
      • callback invoked with:
        • analysisObject (Object)
          • bundleSize (Number) - rendered bundle size in bytes
          • bundleOrigSize (Number) - original bundle size in bytes
          • bundleReduction (Number) - percentage of rendered bundle size reduction
          • modules (Array) - array of module analysis objects
            • module (Object)
              • id (String) - path of module / rollup module id
              • size (Number) - size of rendered module code in bytes
              • origSize (Number) - size of module's original code in bytes
              • dependents (Array) - list of dependent module ids / paths
              • percent (Number) - percentage of module size relative to entire bundle
              • reduction (Number) - percentage of rendered size reduction


    MIT © Andrew Carpenter


    npm i rollup-plugin-analyzer@2.0.0





    Unpacked Size

    15.2 kB

    Total Files


    Last publish


    • doesdev