Vite 8 And Rolldown
Astro 7 upgrades to Vite 8. That matters because Vite 8 replaces the old split between esbuild and Rollup with a Rolldown/Oxc-centered toolchain.
What Astro Users Need To Know
| Concern | Practical Impact |
|---|---|
| Build speed | Usually faster without app changes |
| Custom Vite plugins | Review Vite 8 migration notes |
esbuild options | Compatibility exists, but options are moving toward Oxc/Rolldown equivalents |
rollupOptions | Some advanced output/plugin behavior changed or is deprecated |
| CommonJS interop | More consistent behavior can expose old default-import assumptions |
| Node version | Astro 7 requires Node >=22.12.0 |
Normal App Authors
If you have a mostly standard Astro config, do not start by reading every Vite 8 breaking change. Upgrade Astro, build, then investigate only if your project uses:
- custom Vite plugins
- custom
viteconfig withbuild.rollupOptions - direct Vite JavaScript APIs
- plugins that call
transformWithEsbuild - unusual CommonJS dependencies
Plugin Authors And Advanced Config
Read Vite’s migration guide if you maintain an Astro integration or Vite plugin. The important shift is that Rolldown is not just a faster Rollup binary. It has compatibility goals, but it also changes internals around transforms, dependency optimization, CommonJS interop, output options, and plugin hooks.
Astro-Specific Grounding
The local Astro 7 package declares:
{
"version": "7.0.2",
"dependencies": {
"vite": "^8.0.13"
},
"engines": {
"node": ">=22.12.0"
}
}
Gotcha: Do not use Vite’s broader Node support range as the Astro requirement. Astro’s own package engine is the constraint that matters for Astro projects.