A build turns source files written by many people into something that runs on its own: in 2000 an executable and an installer, today a folder of minified, hashed assets ready for a CDN (Build Tools and Bundlers). Spolsky asked for a single script that checks out the code from scratch, rebuilds every line, and produces every shipping artifact. When a build takes ten manual steps, somebody skips one under deadline pressure.
For a front-end project the one step is an npm 2,036 script that a new developer, the CI server and the release job all run.
{
"scripts": {
"lint": "eslint .",
"test": "vitest run",
"build": "vite build",
"ci": "npm run lint && npm run test && npm run build"
}
}npm ci && npm run ci on a clean checkout installs the lockfile's exact versions, then lints, tests and builds, stopping at the first failure.