Astro
Astro is a web framework built around the "islands architecture": pages are server-rendered HTML by default, with interactive components hydrated only where explicitly marked. Astro lets developers mix React, Vue, Svelte, Solid, and Preact components in the same project and ships zero JavaScript by default.
Core ideas
- Server-first rendering. Pages render to static HTML at build time or per request; minimal client JavaScript.
- Islands. Components marked with
client:load,client:idle,client:visiblehydrate on the client; everything else is static. - Framework agnostic. Use React, Vue, Svelte, Solid, Preact, Lit, even mix them on the same page.
- Content collections. Type-safe content from Markdown, MDX, JSON, YAML.
- Astro DB and Astro Actions. Built-in lightweight database and RPC primitives.
Where it fits
- Marketing sites, blogs, documentation, e-commerce: content-heavy, mostly static, occasional interactivity
- Cases where shipping less JavaScript matters more than rich app-like behaviour
- Migrations: incrementally adopt Astro alongside an existing stack