Astro, the content-focused web framework has released Astro 7, a version given over almost entirely to build performance, followed by two point releases that extend it.

The headline work is a move to native tooling. The .astro compiler has been rewritten in Rust, Markdown and MDX processing moves to a new Rust pipeline, rendering switches to a queue-based engine, and the framework now sits on Vite 8 with its Rolldown bundler. Astro's own benchmarks put builds 15 to 61 percent faster, with astro.build dropping from 62.70s to 24.24s and the 8,431 page Cloudflare developer docs falling from 386.89s to 261.94s.

The new compiler replaces the previous Go implementation and is built on oxc for parsing and Lightning CSS for scoping. It is also stricter. Unclosed tags now error rather than being silently repaired, invalid nesting is passed through as written, and whitespace between elements follows JSX rules.

Markdown now runs through Sätteri, a Rust processor built by core team member Erika on pulldown-cmark and Oxc, with GitHub Flavored Markdown, smart punctuation, heading IDs, math and wikilinks built in rather than bolted on as plugins. Projects that rely on remark or rehype can stay on the old pipeline.

Beyond speed, Astro 7 adds advanced routing through a src/fetch.ts entrypoint that is compatible with Hono, stabilises route caching with experimental CDN providers for Netlify, Vercel and Cloudflare, and introduces astro dev --background plus JSON logging for AI coding agents.

Reaction on Hacker News, where the release post got 211 points, was mixed. One commenter welcomed the dependency count falling from 247 in v6 to 190 in v7, while another called the strict HTML compilation "just not cool" for teams stuck with legacy .astro files.

A developer objected to the Markdown switch, saying moving off unified "just for build time speed improvement is quite upsetting", prompting Erika, a core team member, to confirm the pipeline is deliberately pluggable and unified is not going away.

Williams reported that their own builds got slightly slower, which prompted a response from maintainer Matthew Phillips:

How many pages is it? The performance improvements are mostly for larger sites (thousands of pages) and especially when using a lot of MDX.

We're working on incremental builds which should help as well: https://github.com/withastro/roadmap/issues/1388

Migration is handled by npx @astrojs/upgrade, with the v7 upgrade guide covering the details. Experimental flags for the Rust compiler, queued rendering, logging, caching and advanced routing all move to stable, src/fetch.ts becomes a reserved filename, @astrojs/db is removed in favour of Drizzle or node:sqlite, and deprecated astro:transitions internals are gone.

Two point releases have followed. Astro 7.1, out on 16 July, is about control rather than speed. New script-src-elem, script-src-attr, style-src-elem and style-src-attr CSP directives allow inline styles without loosening the policy for external CSS, and paginate() gains a format function to rewrite next, prev, first and last URLs on file-format builds. A --ignore-lock flag restores running a second dev server, a deferRender option on the glob() loader trades cross-build HTML caching for lower memory on large collections, and an experimental collectionStorage: "chunked" flag splits the .astro/data-store.json store every 10Mb for platforms that cap file sizes.

Astro 7.2 landed on 6 August with the incremental builds Phillips had trailed. Behind experimental.incrementalBuild, a route opts in by returning a cacheKey per path from getStaticPaths(), with entry.digest the natural choice for content collections:

The positioning against rivals is unchanged. Next.js 16 has stabilised Turbopack for production builds and remains the heavier application framework, while Astro continues to target content-driven sites with zero client JavaScript by default. What has shifted is that Astro's build tooling is now native code, closing the gap with the Rust-based pipelines those competitors have been shipping.

Astro is an open-source web framework for content-driven websites, distributed under the MIT license, and was acquired by Cloudflare in January 2026. It renders components on the server by default and lets teams add interactivity through islands built with React, Vue, Svelte, Solid or Preact.