What is the best alternative to rollup?
Here’s the Deal
Slant is powered by a community that helps you make informed decisions. Tell us what you’re passionate about to get your personalized feed and help others.
Pro Supports several modules types
StealJS has support for AMD, CJS and ES6 module types.
Pro Support for LESS and CSS
StealJS can also load CSS and LESS files in addition to JavaScript modules.
Pro Mix ES6 AMD and CommonJS
StealJS supports using all three module types, even in the same file.
Con Changing the order of require statements causes unexpected behavior
Sometimes changing the order of the require statements in a JavaScript file loaded with stealjs may cause unexpected problems or even breaking the code altogether.
Pro Rich and flexible plugin infrastructure
Plugins and loaders are easy to write and allow you to control each step of the build, from loading and compiling CoffeeScript, LESS and JADE files to smart post processing and asset manifest building.
Pro Tap into npm's huge module ecosystem
Using Webpack opens you up to npm, that has over 80k modules of which a great amount work both client-side and server-side. And the list is growing rapidly.
Pro Can create a single bundle or multiple chunks loaded on demand, to reduce initial loading time
Webpack allows you to split your codebase into multiple chunks. Chunks are loaded on demand. This reduces the initial loading time.
Con Config file may be hard to understand
Due to a somewhat hard to grasp syntax, configuring Webpack may take some time.

Pro Registry agnostic
JSPM is registry agnostic, it can pull packages from npm and github and is built in such a way it can support more.
Pro Versioned package urls
It creates a packages folders which are versioned. This makes it future proof for a time where we stop bundling all the code. In the following presentation Guy Bedford calls bundling an anti-pattern.
Pro Switch between async or sync load
With a simple command you could change between load the modules async by systemjs or sync with a bundle file.
Con You need to be an expert to write shims
You can load any module. But that comes with the price: you need to find or write configs to load a particular rare module.
Con Watcher has bugs
Watching would benefit from improvements
Con Unstable API
0.17 is still in beta. 0.16 is lacking features.
Pro Works with basically every desktop browser, even IE6
RequireJS supports IE6+, FF2+, Safari3.2+, Chrome3+ & Opera 10+.
Pro Has a RequireJS optimizer
After building all the modules to be loaded, the built files can be optimized as well (minified and concatenated), even though this is a completely optional step, but doing so could be a lot beneficial for your site's performance.
Pro Supports nested dependencies
If your project has nested dependencies, you won't have to worry about resolving them at all. Because RequireJS will do that for you.
Con Poor handling of circular references
If you create a circular reference between two files, it will typically quietly break - the reference on one side will end up undefined.
Con On its way out
Latest stable release is 2 months old with little development occurring on Github.
Con AMD spec uses globals
The global ‘require’ and ‘define’ methods make namespace collisions likely if building a 3rd party plugin. AMD loaders line require are best if you control the site.
Pro Supports localStorage caching
Modules will get loaded via XHR/XDR and get cached in localStorage to prevent further requests which improves performance escpecially on mobile
Pro Fallback URLs
Any type of dependency can have multiple URLs defined to be used as fallback.
Pro Additional support for loading HTML, CSS, JSON, and text
Loading is dealt with via handlers that are themselves modules (dynamically loaded and cached). Qoopido.demand comes with support for its own module format built-in and offers handlers for css, json and text. Due to handlersbeing modules themselves it is really easy to write custom handlers.
Con Needs CORS headers set
Since modules are loaded via XHR/XDR you need to have CORS headers set.
Pro Compilation is super fast
According to speed benchmarks, Brunch is one of the fastest tools around for compiling files. According to the authors of Brunch the reason behind this speed is that it recompiles only the changes that were made to an app and performs extensive caching of the app's code.
Pro Time to setup is extremely low
After installing Brunch the next step is to load a skeleton from git.io/skeletons. This step is as easy as installing another plugin from the npm registry, just point Brunch to the path of the required skeleton/generator then wait for it to work out its magic. Next, run brunch build then wait for a...
Pro The configuration file is small and the configuration itself is fast and easy
Brunch's config files can be extremely small compared to other alternatives. The fact that brunch also allows you to chose from a number of generators also lowers the configuration time considerably.
Pro Supports Client-side Browser Projects
Provides some support for concatenating client-side browser JavaScript modules. Also, can process the browser property in package.json.
Pro Supports languages that compile to JS
For example, CoffeeScript is supported using the compilers option.
Pro Lightweight
This library just concatenates CommonJS modules together into a single *.js file. Nothing else. It only uses 1 dependency: resolve
Con Not a full-featured bundler
This doesn't handle CSS or HTML stuff. It only bundles JavaScript files.
Pro Supports multiple module formats
SystemJS supports AMD, CommonJS and ES6 modules.
Pro Can load static assets through plugins
System.js supports loading static assets such as images or stylesheets through loader plugins.
Pro Async loading on demand
Async loading on demand including loadings from cdns. For example it is easy to load jquery from cdn as a module. The same thing is not that easy to achieve in Webpack
Pro Provides legacy loader
Legacy loader supports loading of plain js files and exporting globals or even expressions.
Con Development has stopped
The maintainers have announced that all development for CurlJS has stopped, at least for the foreseeable future.
Pro Friendly asset handling
Auto-asset inclusion, native CSS support, and flexible bundling make handling your assets simple.
Pro ES6 support
Supports ES6 syntax by default.
Pro Easy configuration
Declarative configuration makes project setup easy.
Help millions of people make better decisions.
Each month, over 1.7 million people use Slant to find the best products and share their knowledge. Pick the tags you’re passionate about to get a personalized feed and begin contributing your knowledge.