Astro 1.0: islands for content-first sites.
Astro hit 1.0 this week. It is unusual in a way most frameworks aren't: it does less by default, and that turns out to be the point.
Astro shipped 1.0 in August. We've been watching the project since its 'partial hydration' RFC last year, and it's grown into something that quietly solves a real problem — the kind of problem most frameworks have stopped trying to solve.
What Astro does differently
- 01Ship zero JavaScript by default. Pages render to HTML, and only the components you explicitly mark as interactive get hydrated.
- 02Mix frameworks per-island. Vue here, React there, Svelte for that one widget — it works.
- 03Built around content first, interactivity second. The mental model is 'static page with islands', not 'app with rendered pages'.
What an Astro page looks like
---
// This runs at build time, not in the browser
import Newsletter from '../components/Newsletter.vue'
const posts = await fetch('/api/posts').then(r => r.json())
---
<html>
<body>
<h1>Notes</h1>
<ul>
{posts.map(p => <li><a href={p.url}>{p.title}</a></li>)}
</ul>
{/* This Vue component ships JS only when it scrolls into view */}
<Newsletter client:visible />
</body>
</html>When to reach for Astro
- 01Marketing sites that ship a lot of content and need to be fast — Astro will beat almost anything else here.
- 02Documentation sites where most pages are read-only with a small search widget.
- 03Migration projects where you want to leave existing React/Vue islands in place and rebuild the chrome around them.
When not to
- 01Anything that's fundamentally an app — Nuxt or Next will fit your brain better.
- 02Heavily realtime products. Astro can do it, but the framework wasn't built for it.
- 03Teams without strong web-platform basics. Astro hides less than other frameworks — which is great, until you've never had to think about hydration before.
Astro ships zero JavaScript by default — and that's the entire pitch. The frameworks that ship a 200KB hydration bundle for every marketing page never had to argue against that case before.
We've already used Astro on one project this year — a fast-loading internal docs site. The Lighthouse scores took less work than they would have anywhere else. We'll keep reaching for it where it fits.