Astro 7

Astro 7 is a major release focused on speed, request-pipeline control, and removing old experimental/deprecated surfaces. It is not a new mental model for Astro. If you need the framework basics, start with Astro, then use this topic for the version-specific upgrade and new APIs.

The biggest change is the build pipeline. Astro 7 moves more work to native tooling: Vite 8 with Rolldown, a Rust .astro compiler, Sätteri for Markdown/MDX, and a stable queued rendering engine. Most projects should upgrade cleanly, but older projects can hit issues around Markdown plugins, invalid .astro markup, whitespace changes, src/fetch.ts, and removed APIs.

What To Read First

Main Topics

Opinionated Take

For a normal Astro app, the safe Astro 7 path is boring:

  1. Run @astrojs/upgrade.
  2. Run your build and visual checks.
  3. Remove old experimental flags.
  4. Keep memoryCache() or explicit HTTP cache headers unless you know your host’s CDN provider is ready.
  5. Stay on unified only if you actually depend on remark/rehype/recma plugins.

Do not adopt advanced routing just because it is new. Use it when you need to control the request pipeline, for example auth before actions, custom API delegation, or Hono middleware composition.

Follow-Up

learn/astro/ currently frames Astro 6.1 as current. After this topic lands, update that general Astro topic to point here for Astro 7-specific changes.