StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. DevOps
  3. Build Automation
  4. Javascript Build Tools
  5. Angular CLI vs Webpack

Angular CLI vs Webpack

OverviewDecisionsComparisonAlternatives

Overview

Webpack
Webpack
Stacks45.0K
Followers28.1K
Votes752
GitHub Stars65.7K
Forks9.2K
Angular CLI
Angular CLI
Stacks886
Followers744
Votes0
GitHub Stars27.0K
Forks11.9K

Angular CLI vs Webpack: What are the differences?

Key Differences between Angular CLI and Webpack

Angular CLI and Webpack are both popular tools used by web developers to streamline and enhance their development process. While they have overlapping functionalities, there are a few key differences between the two.

  1. Structure and Convention: Angular CLI follows a strict project structure and enforces conventions for organizing files, while Webpack provides more flexibility and allows developers to customize the project structure according to their preferences.

  2. Configuration Complexity: Angular CLI abstracts the configuration process and provides a simplified command-line interface, making it easier for developers to set up and configure their projects. On the other hand, Webpack requires manual configuration through a dedicated configuration file, which can be more complex and time-consuming.

  3. Development Server: Angular CLI includes a built-in development server that allows developers to easily run and test their applications during the development process. Webpack, by itself, does not include a development server and requires additional setup to run the application locally.

  4. Loaders and Plugins: Webpack provides a wide range of loaders and plugins that enable developers to customize the build and bundle process extensively. Angular CLI, on the other hand, abstracts this complexity and provides preconfigured loaders and plugins, simplifying the development experience.

  5. Build Optimization: Angular CLI optimizes the build process by automatically splitting the code into smaller chunks and generating a production-ready bundle. Webpack, while capable of achieving similar optimization, requires manual configuration to achieve the same level of optimization.

  6. Project Generation: Angular CLI provides a scaffolding feature that allows developers to quickly generate the basic files and folder structure for an Angular project. This feature is not available in Webpack and developers have to set up the project structure manually.

In summary, Angular CLI focuses on providing a straightforward and opinionated development experience with a structured project setup, while Webpack offers more flexibility and customization options at the cost of added complexity in configuration.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Advice on Webpack, Angular CLI

Aleksandr
Aleksandr

Contract Software Engineer - Microsoft at Microsoft-365

Dec 23, 2019

Decided

Why migrated?

I could define the next points why we have to migrate:

  • Decrease build time of our application. (It was the main cause).
  • Also jspm install takes much more time than npm install.
  • Many config files for SystemJS and JSPM. For Webpack you can use just one main config file, and you can use some separate config files for specific builds using inheritance and merge them.
301k views301k
Comments
Abigail
Abigail

Dec 10, 2019

Decided

We mostly use rollup to publish package onto NPM. For most all other use cases, we use the Meteor build tool (probably 99% of the time) for publishing packages. If you're using Node on FHIR you probably won't need to know rollup, unless you are somehow working on helping us publish front end user interface components using FHIR. That being said, we have been migrating away from Atmosphere package manager towards NPM. As we continue to migrate away, we may publish other NPM packages using rollup.

224k views224k
Comments

Detailed Comparison

Webpack
Webpack
Angular CLI
Angular CLI

A bundler for javascript and friends. Packs many modules into a few bundled assets. Code Splitting allows to load parts for the application on demand. Through "loaders" modules can be CommonJs, AMD, ES6 modules, CSS, Images, JSON, Coffeescript, LESS, ... and your custom stuff.

A command-line interface tool that you use to initialize, develop, scaffold, and maintain Angular applications. You can use the tool directly in a command shell, or indirectly through an interactive UI such as Angular Console.

Bundles ES Modules, CommonJS, and AMD modules (even combined); Can create a single bundle or multiple chunks that are asynchronously loaded at runtime (to reduce initial loading time); Dependencies are resolved during compilation, reducing the runtime size; Loaders can preprocess files while compiling, e.g. TypeScript to JavaScript, Handlebars strings to compiled functions, images to Base64, etc; Highly modular plugin system to do whatever else your application requires
-
Statistics
GitHub Stars
65.7K
GitHub Stars
27.0K
GitHub Forks
9.2K
GitHub Forks
11.9K
Stacks
45.0K
Stacks
886
Followers
28.1K
Followers
744
Votes
752
Votes
0
Pros & Cons
Pros
  • 309
    Most powerful bundler
  • 182
    Built-in dev server with livereload
  • 142
    Can handle all types of assets
  • 87
    Easy configuration
  • 22
    Laravel-mix
Cons
  • 15
    Hard to configure
  • 5
    No clear direction
  • 2
    Spaghetti-Code out of the box
  • 2
    Loader architecture is quite a mess (unreliable/buggy)
  • 2
    SystemJS integration is quite lackluster
No community feedback yet
Integrations
JavaScript
JavaScript
AngularJS
AngularJS
Angular
Angular

What are some alternatives to Webpack, Angular CLI?

gulp

gulp

Build system automating tasks: minification and copying of all JavaScript files, static images. More capable of watching files to automatically rerun the task when a file changes.

Grunt

Grunt

The less work you have to do when performing repetitive tasks like minification, compilation, unit testing, linting, etc, the easier your job becomes. After you've configured it, a task runner can do most of that mundane work for you—and your team—with basically zero effort.

Ant Design

Ant Design

An enterprise-class UI design language and React-based implementation. Graceful UI components out of the box, base on React Component. A npm + webpack + babel + dora + dva development framework.

Brunch

Brunch

Brunch is an assembler for HTML5 applications. It's agnostic to frameworks, libraries, programming, stylesheet & templating languages and backend technology.

Angular Universal

Angular Universal

It executes on the server, generating static application pages that later get bootstrapped on the client. This means that the application generally renders more quickly, giving users a chance to view the application layout before it becomes fully interactive.

Angular Material

Angular Material

Sprint from Zero to App. Hit the ground running with comprehensive, modern UI components that work across the web, mobile and desktop. It allows to create material styled angular apps fast and easy.

Parcel

Parcel

Parcel is a web application bundler, differentiated by its developer experience. It offers blazing fast performance utilizing multicore processing, and requires zero configuration.

PrimeReact

PrimeReact

PrimeReact is a rich set of open source UI Components for React.

rollup

rollup

It is a module bundler for JavaScript which compiles small pieces of code into something larger and more complex, such as a library or application. It uses the new standardized format for code modules included in the ES6 revision of JavaScript, instead of previous idiosyncratic solutions such as CommonJS and AMD.

React Router

React Router

React Router is a complete routing solution designed specifically for React.js. It painlessly synchronizes the components of your application with the URL, with first-class support for nesting, transitions, and server side rendering.

Related Comparisons

GitHub
Bitbucket

Bitbucket vs GitHub vs GitLab

Bootstrap
Materialize

Bootstrap vs Materialize

Laravel
Django

Django vs Laravel vs Node.js

Bootstrap
Foundation

Bootstrap vs Foundation vs Material UI

Node.js
Spring Boot

Node.js vs Spring-Boot