1.2 KiB
1.2 KiB
ADR 0007: Build Tool — Angular CLI with esbuild
Date: 2026-04-26 Status: Accepted
Context
Angular 17 introduced a new application builder (@angular/build:application) based on esbuild and Vite, replacing the legacy webpack-based @angular-devkit/build-angular:browser builder. The new builder delivers significantly faster cold builds and near-instant incremental rebuilds.
Decision
Use the @angular-devkit/build-angular:application builder (esbuild-based) as configured in angular.json. The entry point is defined via the browser field rather than main.
Consequences
- Positive: Build times are 3–5× faster than the webpack builder for both development and production.
- Positive: Native ESM output. Better code splitting.
- Positive: Aligns with Angular's recommended toolchain for Angular 17+.
- Negative: Some webpack-specific configuration options (e.g. custom webpack plugins) no longer apply. Not an issue for this project.
- Note: The
sasssub-option understylePreprocessorOptions(forsilenceDeprecations) is specific to this builder's schema; the Karma test builder uses a different schema and does not support it.