JSPM

  • Created
  • Published
  • Downloads 633
  • Score
    100M100P100Q101683F
  • License ISC

Analyze the JavaScript loaded by a website

Package Exports

  • bundle-wizard

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-wizard) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

🧙‍♂️ bundle-wizard

This command line utility makes it simple to create visualizations of the JS bundles that were fetched for any specific page (or "entry point") of a web app.

Example

npx bundle-wizard reddit.com

analysis of the reddit mobile sitee

Check out a live demo of this visualization

Try it out on a production app:

Try any of the following commands to take a peek at the JavaScript code different sites are shipping:

  1. npx bundle-wizard reddit.com
  2. npx bundle-wizard codesandbox.io
  3. npx bundle-wizard gatsbyjs.org
  4. npx bundle-wizard codecademy.com
  5. npx bundle-wizard id.atlassian.com

Try it out on an app running locally:

Want to use bundle-wizard but haven't deployed your app yet? It's as easy as:

1. Build your app locally

e.g. npm run build

2. Serve the build folder

e.g. npx serve -s build

3. Call bundle-wizard with the correct localhost url

e.g. npx bundle-wizard localhost:5000/sign-up

Optional command line arguments

url (initial argument)

To skip the initial prompt, provide a url as a first argument:

npx bundle-wizard reddit.com

desktop flag

By default, bundle-wizard will analyze a mobile version of the site. To analyze the desktop version instead, pass the --desktop flag:

npx bundle-wizard --desktop

debug flag

If you'd like to see more logging and detailed error messages, add this flag.

npx bundle-wizard --debug

ignoreHTTPSErrors flag

If you are running an HTTPS connection on localhost and want to test a local site, you'll need to use this setting to prevent self-signed certificate errors:

npx bundle-wizard https://localhost:5000 --ignoreHTTPSErrors

Credits

The core functionality of this library is provided by the awesome source-map-explorer.

Requirements

  1. Downloadable sourcemaps

    This utility downloads sourcemaps from the url you provide. This requires the sourcemaps to be publically available, or at least available on your network. You might need to point to a testing instead of production build, for instance, as some apps disable sourcemaps in production.

    Don't have access to sourcemaps in your prod app? Try building your app locally.

  2. A local Chrome installation

    The wizard uses puppeteer-core to load coverage information from the provided url. This requires you to have a fairly up-to-date version of Chrome installed on your machine.