A bundler must crawl and build your whole app before the dev server is ready. Vite serves source over native ESM and only transforms what the browser actually requests. Drag the project size and race them.
| Concern | Bundler | Vite |
|---|---|---|
| Dev startup | build everything first | serve on demand |
| Scales with app size? | yes (linear) | mostly no |
| What runs your code | bundle | the browser (native ESM) |
| Production build | bundler | Rolldown (Vite 8) |
| HMR speed | often whole-graph | single module |
Vite still bundles for production — unbundled ESM means too many requests for the real web. Dev and prod use different strategies on purpose.