Skip to content

Commit 05e537a

Browse files
authored
Merge pull request #742 from simon04/comparison-table
Fix/extend bundler comparison table
2 parents d6a7b44 + 7d8283c commit 05e537a

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

content/get-started/why-webpack.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -31,32 +31,32 @@ webpack however is not the only module bundler out there. If you are choosing be
3131
| Feature | webpack/webpack | jrburke/requirejs | substack/node-browserify | jspm/jspm-cli | rollup/rollup | brunch/brunch |
3232
|---------|-----------------|-------------------|--------------------------|---------------|---------------|---------------|
3333
| Additional chunks are loaded on demand | **yes** | **yes** | no | [System.import](https://github.com/systemjs/systemjs/blob/master/docs/system-api.md#systemimportmodulename--normalizedparentname---promisemodule) | no | no |
34-
| AMD `define` | **yes** | **yes** | [deamdify](https://github.com/jaredhanson/deamdify) | yes | no | yes |
34+
| AMD `define` | **yes** | **yes** | [deamdify](https://github.com/jaredhanson/deamdify) | yes | [rollup-plugin-amd](https://github.com/brunch/uglify-js-brunch) | yes |
3535
| AMD `require` | **yes** | **yes** | no | yes | no | yes |
3636
| AMD `require` loads on demand | **yes** | with manual configuration | no | yes | no | no |
3737
| CommonJS `exports` | **yes** | only wrapping in `define` | **yes** | yes | [commonjs-plugin](https://github.com/rollup/rollup-plugin-commonjs) | yes |
3838
| CommonJS `require` | **yes** | only wrapping in `define` | **yes** | yes | [commonjs-plugin](https://github.com/rollup/rollup-plugin-commonjs) | yes |
39-
| CommonJS `require.resolve` | **yes** | no | no | no | no |
40-
| Concat in require `require("./fi" + "le")` | **yes** | no♦ | no | no | no |
39+
| CommonJS `require.resolve` | **yes** | no | no | no | no | |
40+
| Concat in require `require("./fi" + "le")` | **yes** | no♦ | no | no | no | |
4141
| Debugging support | **SourceUrl, SourceMaps** | not required | SourceMaps | **SourceUrl, SourceMaps** | **SourceUrl, SourceMaps** | SourceMaps |
42-
| Dependencies | 19MB / 127 packages | 11MB / 118 packages | **1.2MB / 1 package** | 26MB / 131 packages | ?MB / 3 packages
43-
| ES2015 `import`/`export` | **yes**(vr. 2) | no | no | **yes****yes** | yes, via [es6 module transpiler](https://github.com/gcollazo/es6-module-transpiler-brunch)
42+
| Dependencies | 19MB / 127 packages | 11MB / 118 packages | **1.2MB / 1 package** | 26MB / 131 packages | ?MB / 3 packages | |
43+
| ES2015 `import`/`export` | **yes** (webpack 2) | no | no | **yes****yes** | yes, via [es6 module transpiler](https://github.com/gcollazo/es6-module-transpiler-brunch)
4444
| Expressions in require (guided) `require("./templates/" + template)` | **yes (all files matching included)** | no♦ | no | no | no | no |
45-
| Expressions in require (free) `require(moduleName)` | with manual configuration | no♦ | no | no | no |
45+
| Expressions in require (free) `require(moduleName)` | with manual configuration | no♦ | no | no | no | |
4646
| Generate a single bundle | **yes** | yes♦ | yes | yes | yes | yes |
47-
| Indirect require `var r = require; r("./file")` | **yes** | no♦ | no | no | no |
47+
| Indirect require `var r = require; r("./file")` | **yes** | no♦ | no | no | no | |
4848
| Load each file separate | no | yes | no | yes | no | no |
4949
| Mangle path names | **yes** | no | partial | yes | not required (path names are not included in the bundle) | no |
5050
| Minimizing | uglify | uglify, closure compiler | [uglifyify](https://github.com/hughsk/uglifyify) | yes | [uglify-plugin](https://github.com/TrySound/rollup-plugin-uglify) | [UglifyJS-brunch](https://github.com/brunch/uglify-js-brunch)
5151
| Multi pages build with common bundle | with manual configuration | **yes** | with manual configuration | with bundle arithmetic | no | no|
5252
| Multiple bundles | **yes** | with manual configuration | with manual configuration | yes | no | yes |
53-
| Node.js built-in libs `require("path")` | **yes** | no | **yes** | **yes** | [node-resolve-plugin](https://github.com/rollup/rollup-plugin-node-resolve)
54-
| Other Node.js stuff | process, __dir/filename, global | - | process, __dir/filename, global | process, __dir/filename, global for cjs | global ([commonjs-plugin](https://github.com/rollup/rollup-plugin-commonjs)) |
53+
| Node.js built-in libs `require("path")` | **yes** | no | **yes** | **yes** | [node-resolve-plugin](https://github.com/rollup/rollup-plugin-node-resolve) | |
54+
| Other Node.js stuff | process, __dir/filename, global | - | process, __dir/filename, global | process, __dir/filename, global for cjs | global ([commonjs-plugin](https://github.com/rollup/rollup-plugin-commonjs)) | |
5555
| Plugins | **yes** | yes | **yes** | yes | yes | yes |
5656
| Preprocessing | **loaders, [transforms](https://github.com/webpack/transform-loader)** | loaders | transforms | plugin translate | plugin transforms | compilers, optimizers |
57-
| Replacement for browser | `web_modules`, `.web.js`, package.json field, alias config option | alias option | package.json field, alias option | package.json, alias option | no |
57+
| Replacement for browser | `web_modules`, `.web.js`, package.json field, alias config option | alias option | package.json field, alias option | package.json, alias option | no | |
5858
| Requirable files | file system | **web** | file system | through plugins | file system or through plugins | file system |
59-
| Runtime overhead | **243B + 20B per module + 4B per dependency** | 14.7kB + 0B per module + (3B + X) per dependency | 415B + 25B per module + (6B + 2X) per dependency | 5.5kB for self-executing bundles, 38kB for full loader and polyfill, 0 plain modules, 293B CJS, 139B ES2015 System.register before gzip | **none for ES2015 modules** (other formats may have)
59+
| Runtime overhead | **243B + 20B per module + 4B per dependency** | 14.7kB + 0B per module + (3B + X) per dependency | 415B + 25B per module + (6B + 2X) per dependency | 5.5kB for self-executing bundles, 38kB for full loader and polyfill, 0 plain modules, 293B CJS, 139B ES2015 System.register before gzip | **none for ES2015 modules** (other formats may have) | |
6060
| Watch mode | yes | not required | yes | not needed in dev | no | yes |
6161

6262
♦ in production mode (opposite in development mode)

0 commit comments

Comments
 (0)