JS Bundler Comparison
Michael Ficarra edited this page May 4, 2013
·
5 revisions
commonjs-everywhere | node-browserify | webpack | wrapup | modules-webmake | requisite | |
---|---|---|---|---|---|---|
support for arbitrary compile-to-JS languages | ✓ | ? | ✓ | ? | ? | |
operates on structured JS representation | ✓ | ✓ | ✓ | ? | ? | |
exposes structured JS representation | ✓ | ✓ | ✓ | ? | ? | |
exposes computed dependencies | ✓ | ? | ? | ? | ? | ? |
CLI watcher that only reloads necessary dependencies | ✓ | ✓ | ✓ | ? | ? | |
source maps | ✓ | ✓ | ✓ | ? | ? | |
supports entire module specification | ✓ | ? | ? | ? | ? | |
supports useful parts of process specification | ✓ | ✓ | ? | ? | ? | ? |
includes core node modules | ✓ | ✓ | ? | ? | ? | ? |
module aliasing for browser-only implementations | ✓ | ? | ? | ? | ? | ? |
MS Windows support | ✓ | ? | ? | ? | ? | ? |
async and sync interfaces | ✓ | ? | ? | ? | ? | ? |
compile-time module resolution | ✓ | ? | ? | ? | ? | ? |
support circular dependencies | ✓ | ? | ? | ? | ? | ? |
defines global , __filename and __dirname
|
✓ | ? | ? | ? | ? | ? |
accept input over stdin, output to stdout | ✓ | ? | ? | ? | ? | ? |
helpful errors for deps that are poorly specified | ✓ | ? | ? | ? | ? | ? |
helpful errors for deps that can't be found | ✓ | ? | ? | ? | ? | ? |
option to ignore missing deps | ✓ | ✓ | ? | ? | ? | ? |
extensive test suite | ✓ | ? | ? | ? | ? | ? |
supports other module systems (AMD, etc.) | ✗ | ? | ✓ | ? | ? | ? |
overhead for n modules (minified bytes) | 560 + 35n + 198 optional | ? | ? | ? | ? | ? |
TODO: fill in unknown spaces