Originally published on danholloran.me
If you've ever watched a production build spin for a minute while your terminal mocks you with its progress bar, Vite 8's arrival is worth paying attention to. The headline change is a new bundler under the hood — Rolldown — and the performance numbers coming out of early adopters are hard to ignore.
Why Vite Needed a New Bundler
For years, Vite juggled two separate bundlers to cover different scenarios. During development it leaned on esbuild for its raw speed, and at build time it handed off to Rollup for its sophisticated chunking and plugin ecosystem. This split worked well enough, but it created a persistent headache: the two pipelines didn't always behave the same way. You'd write a plugin that worked in dev, only to hit a subtle edge case in production. Or you'd track down a build inconsistency that turned out to be a difference in how esbuild and Rollup resolved a module. The glue code holding everything together kept growing.
Rolldown solves this by being a single bundler that handles both jobs. It's written in Rust (hence the speed), it supports the Rollup plugin API, and it's built by the VoidZero team — the same people who maintain Vite. The goal was a unified toolchain: Vite for orchestration, Rolldown for bundling, and Oxc for parsing, transforming, and linting, all from one team.











