# 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 `sass` sub-option under `stylePreprocessorOptions` (for `silenceDeprecations`) is specific to this builder's schema; the Karma test builder uses a different schema and does not support it.