Astro (Webフレームワーク)

Astro（アストロ）はWebサイトを制作するためのJavaScript／TypeScriptベースのフレームワークである。独自の「アイランド・アーキテクチャ（Islands Architecture）」を採用し、ユーザーに不要なJavaScriptの処理を最小限に抑え、初期表示性能の向上を謳っている。また、ReactやVueなど様々なUIフレームワークを併用可能な設計となっており、開発者は既存のコンポーネントを活用しつつ、サイトを構築できる点も特徴である。
 歴史 
AstroはFred SchottやNate Mooreらによって2021年ごろから開発を開始した。SnowpackとSkypackの開発チームを中心に、コミュニティからの貢献も行われ、2022年4月にベータ版がリリースされた。

以降も大規模なアップデートが継続的に行われており、もAstro v5をベースに開発が続けられている。

 バージョン 
 バージョン  リリース日  公式ブログ記事 Astro 5.0  2024年12月3日  Astro 5.0 Astro 4.0  2023年12月5日  Astro 4.0 Astro 3.0  2023年8月30日  Astro 3.0 Astro 2.0  2023年1月24日  Astro 2.0 Astro 1.0  2022年8月9日  Astro 1.0

 特徴 
 パフォーマンス 
Astroはページ全体を静的なHTMLにレンダリングし、不要なJavaScriptを削除することで高速なパフォーマンスを実現する。自動補完検索バーなどでインタラクティブな要素が必要な場合のみ、該当するコンポーネントを「アイランド・アーキテクチャ（Islands Architecture）」の方式で、Astroは該当コンポーネント（および依存関係）のみを読み込む。さらにコンポーネントがページ上で表示されるまで読み込みを遅延させることもできる。

また、AstroではImageコンポーネントを使用することで、画像の幅・高さをHTMLに反映し、読み込み時のレイアウトずれ（CLS）を防ぐ仕組みが組み込まれている。さらに、ローカルおよび許可されたリモート画像に対しては、フォーマット変換が可能である。

 開発 
AstroはTypeScript、CSS Modules、Sass、Tailwind CSSなどの主要技術をサポートしている。また、React、Vue、Svelte、SolidJS、Preactなど複数のフレームワークを同一プロジェクト内で併用できる。RSSフィードやサイトマップの自動生成なども容易に実装できる。

Astroは静的サイト生成（SSG）に加え、サーバーサイドレンダリング（SSR）やエッジレンダリングにも対応しており、静的サイトから動的Webアプリケーションまで幅広い構成をサポートしている。

さらに、MarkdownおよびMDXにネイティブ対応しており、主にブログ、企業サイト、マーケティングページ、ドキュメントサイトなど、コンテンツ配信を中心とするウェブサイト構築に適している。

 脚注 
 注釈 

 出典 

Category:ソフトウェアフレームワーク