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

  • 01 Ship zero JavaScript by default. Pages render to HTML, and only the components you explicitly mark as interactive get hydrated.
  • 02 Mix frameworks per-island. Vue here, React there, Svelte for that one widget — it works.
  • 03 Built 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

  • 01 Marketing sites that ship a lot of content and need to be fast — Astro will beat almost anything else here.
  • 02 Documentation sites where most pages are read-only with a small search widget.
  • 03 Migration projects where you want to leave existing React/Vue islands in place and rebuild the chrome around them.

When not to

  • 01 Anything that's fundamentally an app — Nuxt or Next will fit your brain better.
  • 02 Heavily realtime products. Astro can do it, but the framework wasn't built for it.
  • 03 Teams 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.