Build Tools & Bundlers
The Rust-rewrite generation of bundlers and transformers.
The bundler space went through a Rust-rewrite era. By 2026 the picture is roughly:
Dev / app bundler
- ★ Vite 7 — the default for SPAs, libraries, and many meta-frameworks (SvelteKit, Astro, Solid Start, TanStack Start, Remix/RR7).
- ★ Turbopack — Next.js's bundler; default for
next devandnext buildin Next 16. - Rspack — Rust port of webpack with high webpack compatibility. Used by ByteDance internally; growing OSS adoption.
- Rolldown — Rust rewrite of Rollup (from the Vite/Vue team); will become Vite's underlying bundler.
Transformers
- SWC — Rust transpiler used by Next.js, Vercel.
- esbuild — Go-based; foundation for Vite's dev server pre-bundling.
- Babel — still ubiquitous for plugin-heavy use cases (custom JSX transforms, decorators, complex syntax extensions).
- OXC — fastest JS toolchain in Rust (parser, transformer, resolver, linter —
oxlint).
Library bundling
- tsup —
esbuild-powered library bundler; the default for new TS libraries. - unbuild — lightweight, used by Nuxt / Nitro projects.
- Vite's library mode — for SPAs/components.
- Rolldown (when stable) — the future for libraries that pick Rollup-style ergonomics.
Runtime / dev servers
- Bun — replaces Node + npm + bundler + test runner; production-ready for many uses.
- Deno 2 — Node-compatible, npm-compatible, web standard APIs first.
Other
- Lightning CSS — CSS bundler/transformer (Rust); inside Tailwind v4 and others.
- CSS Modules + PostCSS — still the default CSS pipeline.
Pick this if…
- Default SPA / library: Vite.
- Next.js: Turbopack (no choice; it's the default).
- Library author: tsup (today), Rolldown (soon).
- Massive existing webpack config: Rspack (drop-in), or stick with webpack 5.
- Want one tool that does it all: Bun.