npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

bubleup

v0.5.2

Published

Transpile ESnext code with Rollup and Buble.

Downloads

23

Readme

tl;dr

$ bubleup
# is the same as
$ bubleup src/index.js --out-dir dist

# watch mode
$ bubleup --watch

Why is this useful?

I always repeat the same configurations for bundling my front-end libraries. With Bubleup you can simply run bubleup to generate commonjs-format code and or append --format umd to generate umd-format code, and it's fast! You can even pass --compress to generate compressed file and sourcemap.

Install

$ npm install -g bubleup

Usage

The buble guide: https://buble.surge.sh/guide

You can specific options in command-line:

$ bubleup src/index.js -d output

For full CLI usage please run bubleup -h, It's hard to describe some nested options in command line, so you can also configure them in package.js, eg:

{
  "bubleup": {
    "entry": "./path/to/my-entry.js"
  }
}

name

The filename of bundled files, the default value is package name in package.json. If no package.json was found, fallback to index.

$ bubleup --name redux --format umd --format cjs
# generate ./dist/redux.js ./dist/redux.common.js

format

Specific the bundle format, it could be a string like 'umd' or multiple targets ['umd', 'cjs'], it's useful if you want to support multiple standards. Default value is ['cjs'].

You should specfic a moduleName if you target umd, otherwise fallback to name.

{
  "bubleup": {
    "format": ["cjs", "umd"]
  }
}

compress

Enable this option to generate an extra compressed file for the UMD bundle, and sourcemap.

{
  "bubleup": {
    "format": "umd",
    "compress": true
  }
}
// generates: [name].js [name].min.js [name].min.js.map

async

Transform async/await to generator function, defaults to true.

alias

This is some feature which is similar to Webpack's alias, eg:

{
  "bubleup": {
    "alias": {
      "controllers": "./src/controllers"
    }
  }
}

paths

This helps you import some file from the CDN (as using AMD), or set an alias to an external file, see more details in Rollup's WIKI.

transforms

Apply custom transform rules to buble options:

{
  "bubleup": {
    "transforms": {
      "dangerousForOf": false
    }
  }
}

target

Compile targets, eg:

{
  "bubleup": {
    "target": {"chrome": 48, "firefox": 44, "node": 4}
  }
}

jsx

Buble supports JSX, and you can specfic a custom JSX pragma:

{
  "bubleup": {
    "jsx": "createElement"
  }
}

map

Generate soucemaps for cjs and umd builds, note that --compress will always generate sourcemaps for .min.js file:

{
  "bubleup": {
    "map": true
  }
}

watch

Run Rollup in watch mode, which means you will have faster incremental builds.

API

import bubleup from 'bubleup'

bubleup(options).catch(err => {
  if (err.snippet) {
    // display the actual error snippet
    console.error(err.snippet)
  }
  console.error(err.stack)
})

License

MIT © EGOIST