Astro (web framework)
| Original author(s) | Fred Schott, Nate Moore |
|---|---|
| Developer(s) | Cloudflare and the open-source community[1] |
| Initial release | June 8, 2021[2] |
| Repository | github |
| Written in | JavaScript, TypeScript |
| Engine | |
| Operating system | Cross-platform |
| Platform | Web platform |
| License | MIT License |
| Website | astro |
Search Astro (web framework) on Amazon.
Astro is a free and open-source web framework owned by Cloudflare, Inc. designed for content-driven websites. It provides static site generation and supports multiple frontend JavaScript libraries.
Astro generates static content on the server but enables reactive user interfaces through the use of the islands architecture, an idea coined by Etsy engineer Katie Sylor-Miller in 2019.[3] Developers mark components which require client-side JavaScript. At build time, each page is saved as plain HTML with zero client-side JavaScript. Directives specify when each interactive component hydrates, which allows Astro to only load client-side JavaScript when needed.[4]
History
Astro was created by Fred Schott and the open-source development team behind Snowpack and Skypack. Skypack was a JavaScript CDN that allowed developers to load npm packages directly in the browser without a build step. While optimizing package delivery, the team developed Astro as a build tool which identified exactly which JavaScript each page required, reducing unnecessary network requests.[5]
The first public beta was released on June 8, 2021 under an MIT license.[6]
On January 16, 2026, Cloudflare, Inc. acquired Astro. In the press release, Cloudflare stated that Astro would remain open source and that they would continue to support open source contributions via the Astro Ecosystem Fund.[7][8]
Features
Static site generation
Astro is designed as a static site generator which allows developers to use component-based JavaScript frameworks like React as templating systems while still generating static HTML output. This places Astro between traditional site generators like Jekyll or Eleventy, which use templating languages, and frontend-driven ones like Gatsby, which ship JavaScript-heavy output.[5]
Because Astro generates static HTML at build time, pages are directly crawlable by search engines without requiring JavaScript execution. This also allows meta tags and Open Graph data to be read by social media crawlers, enabling link previews on platforms such as Facebook and X.[9]
Content management
Astro includes a content collections system for organizing content such as Markdown files. A content collection is a set of structurally identical data, which can be stored locally in the file system, or fetched from a remote source like a CMS. The content collections system allows for the creation of schemas, which can validate the shapes of each entry.[10]
The feature was expanded with the Content Layer API, which added support for data from multiple sources, local caching between builds, and maintained the type safety layer.[11] Astro uses an embedded SQLite database to improve scalability as well as enabling caching between builds.[12]
View transitions
While view transitions such as fading, sliding, and persistent elements were traditionally only possible in JavaScript single-page applications, the View Transitions API has been implemented by browsers to add transition support for multi-page applications. Astro 3.0, released on August 30, 2023, added support for the API, becoming the first major web framework to do so.[13]
Framework agnosticism
From the first beta release, Astro was designed to support components from different JavaScript web frameworks, such as React, Svelte, and Vue. This allows developers to mix components from multiple frameworks in one project rather than committing to one throughout.[6]
Ecosystem
The Astro team maintains Starlight, a documentation theme built on top of the framework. Starlight provides support for internationalization,[14] sidebar navigation,[15] and site search powered by Pagefind.[16]
Developer tooling has included official and community-made integrations for Astro, such as the Biome formatter[17] and the ESLint linter.[18]
References
- ↑ "withastro/astro". GitHub. Retrieved 2026-03-22.
- ↑ "Astro first release". GitHub. 2021-06-08. Retrieved 2026-03-22.
- ↑ "Plug-and-play web development with Astro". InfoWorld. Retrieved 2026-03-22.
- ↑ Miller, Jason. "Islands Architecture - JASON Format". jasonformat.com. Retrieved 2026-03-22.
- ↑ 5.0 5.1 "Smashing Podcast Episode 43 With Matthew Phillips: What Is Astro?". Smashing Magazine. 2021-11-04. Retrieved 2026-03-22.
- ↑ 6.0 6.1 "Introducing Astro: Ship Less JavaScript". Astro. 2021-06-08. Archived from the original on 2021-06-08. Retrieved 2026-03-22. Unknown parameter
|url-status=ignored (help) - ↑ "Cloudflare Acquires Astro to Accelerate the Future of High-Performance Web Development". www.cloudflare.com. Retrieved 2026-03-22.
- ↑ "Astro web framework maker merges with Cloudflare". InfoWorld. Retrieved 2026-03-22.
- ↑ "The Open Graph protocol". ogp.me. Retrieved 2026-03-22.
- ↑ "Content collections". Docs. Retrieved 2026-03-22.
- ↑ "Content Layer: A Deep Dive". Astro. 2024-09-18. Retrieved 2026-03-22.
- ↑ Lawson, Loraine (2024-06-15). "Astro Expansion Plans, Swift Migrates, and TypeScript Update". The New Stack. Retrieved 2026-03-22.
- ↑ Lawson, Loraine (2023-09-02). "Dev News: Astro 3.0, State of CSS, and React Opinions". The New Stack. Retrieved 2026-03-22.
- ↑ "Internationalization (i18n)". Starlight. 2026-03-11. Retrieved 2026-03-22.
- ↑ "Sidebar Navigation". Starlight. 2026-03-11. Retrieved 2026-03-22.
- ↑ "Site Search". Starlight. 2025-11-03. Retrieved 2026-03-22.
- ↑ "Language support". Biome. Retrieved 2026-03-23.
- ↑ "eslint-plugin-astro". eslint-plugin-astro. Retrieved 2026-03-23.
This article "Astro (web framework)" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:Astro (web framework). Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.
