When creating a new project using the
Aurelia CLI, you are presented with a wizard to select a bundler, a module loader, CSS preprocessor and more.
On top of all choices, you first need to choose a bundler: either
Webpack (the default bundler) or CLI's built-in bundler (the alternative bundler).
* Webpack is the default choice for both ESNext and TypeScript applications.
* Webpack is a bundler with built-in module loader. If you choose to use Webpack then you don't need a separate module loader. Webpack is powerful and popular, but it could be a daunting task to set up Webpack from scratch. Aurelia CLI generates a battle-tested Webpack configuration file for your app, provides a solid base for further customization if you ever need to.
CLI's Built-in Bundler :
* Aurelia CLI ships with an in-house made bundler providing similar functionality of Webpack but with much simpler configuration. If you have no experience on Webpack, we recommend using the built-in bundler.
* The built-in bundler is paired with module loader RequireJS or SystemJS.
* RequireJS has been around for a very long time, it's the reference module loader for AMD module format. Comparing to SystemJS, it is considered a bit more mature and stable, but with fewer features.