Socket
Socket
Sign inDemoInstall

rollup-analyzer

Package Overview
Dependencies
0
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    rollup-analyzer

Analyze file sizes of rollup bundled imports


Version published
Weekly downloads
75
increased by56.25%
Maintainers
1
Install size
11.0 kB
Created
Weekly downloads
 

Readme

Source

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

Analyze file sizes of rollup bundled imports

rollup-analyzer

Rollup Analyzer gives you a quick look at what's taking up space in your bundle.

Comes in three scrumptious flavors:

rollup-analyzer-plugin

Adding as a plugin to your rollup config or build script will print a well formatted analysis to the console upon bundling.

rollup-analyzer-config

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

rollup-analyzer

Full analysis module, giving you access to the complete analysis object or well formatted analysis text for CI and build usage.

Install

$ npm install --save-dev rollup-analyzer

Usage

const rollupAnalyzer = require('rollup-analyzer')({limit: 5})
rollup.rollup({/*...*/}).then((bundle) => {
  // print console optimized analysis string
  rollupAnalyzer.formatted(bundle).then(console.log).catch(console.error)
})

// Results in ...
/*
-----------------------------
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
...
*/

API

rollupAnalyzer

the default exported function is identical to init, and returns the same functions as export {init, formatted, analyze}. So, you can require('rollup-analyzer') or require('rollup-analyzer')({limit: 5}) and use the same functions.

rollupAnalyzer.init(options)

set options to use in analysis (this step is optional)

  • options (Object)
    • 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

rollupAnalyzer.formatted(bundle)

returns Promise which resolves with well formatted analysis string (for CLI printing)

  • bundle (Rollup Bundle) - required

rollupAnalyzer.analyze(bundle)

returns Promise which resolves with array of objects describing each imported file

  • bundle (Rollup Bundle) - required

returned array's child analysis objects have the following properties

  • id (String) - path of module / rollup module id
  • size (Number) - size of module in bytes
  • dependents (Array) - list of dependent module ids / paths
  • percent (Number) - percentage of module size relative to entire bundle

License

MIT © Andrew Carpenter

Keywords

FAQs

Last updated on 21 Oct 2017

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc