# Astro

*The web framework this site is built with*

Astro is a web framework that renders pages to HTML at build time and ships no JavaScript unless a component asks for it. Interactive pieces are declared one by one as islands, so a page carries the code for those and nothing else.

**Canonical:** https://spoko.space/glossary/astro/  
**Language:** en  
**Category:** Technology  
**Also known as:** Astro framework, Astro islands  
**Published:** 2026-09-22  
**Glossary:** https://spoko.space/glossary/

---
## What it is {#what-it-is}

A framework for building sites whose default output is HTML. You write components — in Astro's own syntax, or in Vue, React, Svelte — and by default they run once, during the build, and leave markup behind. A component only reaches the browser as JavaScript if you explicitly ask, one component at a time.

That inversion is the whole product. Most frameworks ship an application and render content inside it; Astro ships content and admits an application where you point at it.

## Why it matters if you are paying for a website {#why-it-matters-if-you-are-paying-for-a-website}

Because the bill for a site is usually paid in JavaScript that nobody needed. A brochure site built as a single-page application downloads a framework in order to display three paragraphs; the same site in Astro downloads the three paragraphs.

For anything whose job is to be read and found — a company site, a blog, a catalogue, a landing page — that is the right default, and it is why this site is built this way.

## What it looks like here {#what-it-looks-like-here}

This site is Astro, so the claims above are ones I have to live with. Every page is prerendered; the handful of interactive things — the menu, the theme toggle, the image lightbox, the consent banner — are islands with their own small scripts. An article carries none.

The cost side is honest too. A content change means a rebuild, and this build takes a few minutes, because it also renders a social card per page in a headless browser and then runs its own checks over the output: links, structured data, title lengths, the Markdown mirrors, the language pairs. That is a good trade at a hundred pages and a bad one at a hundred thousand.

## When it is the wrong choice {#when-it-is-the-wrong-choice}

When the thing you are building is an application rather than a document. A dashboard where every panel shares state, a tool with a live-updating table, anything behind a login where most of the screen is interactive — those want a framework designed for a running application, and reaching for islands there means fighting the model. That work goes to Vue and Laravel in my hands, not to Astro.

## What Astro is not {#what-astro-is-not}

It is not a CMS — nobody edits content in it — and it is not a backend. It builds pages from whatever source you give it: files in the repository, a headless CMS, an API. What it replaces is the theme layer, not the database.

## Related terms {#related-terms}

- [SSG](https://spoko.space/glossary/ssg/): Static site generation builds every page into a finished HTML file before anyone visits, so a request is answered by a file server instead of by code, a database query and a template rendered on the spot. — Markdown: https://spoko.space/glossary/ssg.md
- [headless CMS](https://spoko.space/glossary/headless-cms/): A headless CMS stores and edits content but does not render the website. The pages are built by something else, which reads the content over an API — so the editing tools and the front end can be changed independently of each other. — Markdown: https://spoko.space/glossary/headless-cms.md
- [CMS](https://spoko.space/glossary/cms/): A CMS is the software that lets someone change a website without touching code. The word covers three separate jobs — editing, storing and displaying content — and most arguments about which CMS to use are really arguments about which of the three you need. — Markdown: https://spoko.space/glossary/cms.md
- [Laravel](https://spoko.space/glossary/laravel/): Laravel is a PHP framework for building web applications — the kind with accounts, permissions, a database and work that runs in the background. It supplies the parts every application needs so they are not rebuilt by hand on each project. — Markdown: https://spoko.space/glossary/laravel.md

## Where I write about this {#related-posts}

- [Custom CMS with AI](https://spoko.space/custom-cms-with-ai/) — Markdown: https://spoko.space/custom-cms-with-ai.md
  A custom headless CMS and content dashboard for managing websites, pages, translations and media from a single interface — with AI connected to the content workflow over MCP.
- [Modern Car Blog](https://spoko.space/modern-car-blog/) — Markdown: https://spoko.space/modern-car-blog.md
  Headless automotive blog built with Astro, Vue3, UnoCSS, and a WordPress REST API backend — static performance with a familiar CMS for content editors.
- [E2E Testing with AI and Playwright (2026) — Practical Guide](https://spoko.space/blog/e2e-tests-ai-playwright-guide/) — Markdown: https://spoko.space/blog/e2e-tests-ai-playwright-guide.md
  Where AI actually saves time in Playwright E2E tests: selector strategy, prompt patterns, MCP integration, and real ROI numbers from production projects.
- [How to Choose the Right Web Developer](https://spoko.space/blog/how-to-choose-a-web-developer/) — Markdown: https://spoko.space/blog/how-to-choose-a-web-developer.md
  Check the portfolio, ask about technologies, read the reviews — but there are a few things that separate a good developer from a bad one. A practical guide for business owners.
- [Web Application Frameworks in 2026](https://spoko.space/blog/web-application-frameworks-2026/) — Markdown: https://spoko.space/blog/web-application-frameworks-2026.md
  Astro, Vue, React, Next.js or headless WordPress? A practical comparison of the popular frameworks with performance benchmarks and usage scenarios.

## See also {#see-also}

- [Web development](https://spoko.space/web-development/)
- [Moving a site off WordPress to Astro](https://spoko.space/wordpress-to-astro/)

## Sources {#sources}

- [Astro — islands architecture](https://docs.astro.build/en/concepts/islands/) — The model: server-rendered page, hydrated components declared individually.
- [Astro — rendering modes](https://docs.astro.build/en/basics/rendering-modes/) — Where the line between prerendered and on-demand routes is drawn.
