Build Tools & Bundlers
The rival bundlers, transpilers and framework CLIs that turn source into shipped files, each with its own config, CLI and plugins. Interviewers ask which one fits a project and what leaving it costs.
on this pageshowhide
explore
- Source Mapsempty
- Viteempty
- Dev Server & HMRempty
- Configurationempty
- Plugin Systemempty
- Production Bundlingempty
- Env Vars & Assetsempty
- webpackempty
- Rollupempty
- Rolldownempty
- esbuildempty
- SWCempty
- Babelempty
- Parcelempty
- Angular CLI (has its own guide)32 questions
- Workspace File & Targets5 questions
- Generators & Schematics6 questions
- Builders & Dev Server6 questions
- Update Command & Migrations5 questions
- Library Projects5 questions
- Serve, Proxy & Deploy5 questions
- create-vue5 questions
→ has its own guide
questions
page 2 of 2How do you run create-vue non-interactively from a script or CI job, and which prompts can still appear even when you pass feature flags?
basics
~20 sPass a directory and feature flags after --, as in npm create vue@latest admin-tool -- --ts --router --pinia --vitest. Any feature flag skips the feature prompts, but a missing directory, a non-empty folder without --force or an invalid package name still prompts.
What does the Angular CLI's `ng deploy` command actually run, and where does its behaviour come from?
basics
~20 sng deploy runs whatever builder the project's deploy target in angular.json names; the CLI ships none. A hosting package installed with ng add usually writes that target, and its builder builds the app and uploads the output.
What do the Angular CLI's `ng update` flags `--create-commits` and `--allow-dirty` change, and why does a clean working tree matter?
basics
~20 s--create-commits (-C) commits the version changes, then each migration separately with its name and description. --allow-dirty lets the update run with uncommitted changes, which it otherwise refuses, at the cost of mixing your edits into the update's diff.
When is writing a custom Angular CLI builder justified, and how do you create one that `ng run` can execute?
basics
~20 sIt is justified for a repeatable project task that needs angular.json options and configurations. Write a createBuilder() handler returning { success }, declare it in builders.json, point the package.json builders field at it, and run ng run project:target.
In an Angular CLI library built with ng-packagr, how do you add a secondary entry point such as `ui-kit/testing`, and when is one worth it?
basics
~20 sA secondary entry point is a library subfolder with its own ng-package.json naming an entry file; the same ng build packages it as a separate import path like ui-kit/testing. Use one for optional code, heavy dependencies or test helpers.
As an Angular library author, how do you ship a migration schematic so `ng update` rewrites consumers' code for your breaking change?
basics
~20 sPoint ng-update.migrations in the library's package.json at a migration collection whose entries each carry a version, a factory and a description. When a consumer updates across that version, ng update runs the rule, which edits their code through the Tree.
In a create-vue TypeScript project, why does tsconfig.json list no files but reference tsconfig.app, tsconfig.node and tsconfig.vitest, and what does npm run build run?
basics
~20 sThe root tsconfig.json only references separate projects: app code for the browser, tool configs for Node, and tests for jsdom, each with its own globals. npm run build runs vue-tsc --build and vite build in parallel.
showing 31–37 of 37