Webframework: Astro 2.0 bringt Typsicherheit für Markdown und MDX

Die neue Hauptversion führt die Content Collections API für Markdown- und MDX-Typsicherheit ein und erhöht die Performance durch hybrides Rendering.

In Pocket speichern vorlesen Druckansicht
Black,Hole,With,Gravitational,Lens,Effect,And,The,Milky,Way

(Bild: Dotted Yeti/Shutterstock.com)

Lesezeit: 3 Min.
Von
  • Maika Möbus
Inhaltsverzeichnis

Rund fünf Monate nach der ersten Hauptversion liegt das Webframework Astro in Version 2.0 vor. Das auf Geschwindigkeit ausgelegte Framework soll in dieser Version erneut beschleunigen, indem es hybrides Rendering als Mischung aus statischen und dynamischen Inhalten einführt. Die größte Neuerung soll jedoch eine neue API sein, die für Typsicherheit in Markdown- und MDX-Dateien sorgen soll. Nach Angaben des Astro-Teams ist es das erste Major-Webframework, das diese Möglichkeit eröffnet.

Die neue Hauptversion 2.0 führt die Content Collections API ein, mit der sich Dateien in der Auszeichnungssprache Markdown und dem Markdown-Format MDX in verschiedene Kollektionen wie "blog" oder "newsletter" sortieren lassen. Diese Content Collections bieten integrierte Typsicherheit. Eine Content Collection ist ein beliebiges Verzeichnis innerhalb des dafür vorgesehenen src/content-Projektverzeichnisses. Ein Content-Eintrag lässt sich als Markdown-Datei (.md) oder als MDX-Datei (.mdx) speichern.

Content Collections in Astro 2.0.

(Bild: Astro)

Astro soll sich in den Content Collections unter anderem um Schemavalidierung, informative Fehlernachrichten, Inline-Typfehler, automatisch generierte Typen und Autovervollständigung kümmern. Ein Blogeintrag geht im Detail auf die Neuerung ein, die ein "Game-Changer" für diejenigen sein soll, die Markdown im Web verwenden. Für die Inhaltsschemata greift Astro auf die TypeScript-Bibliothek Zod zurück.

Nachdem Astro bislang die Wahl zwischen Server-side Rendering (SSR) und Static Site Generation (SSG) angeboten hat, soll Version 2.0 beide Welten durch Hybrid Rendering zusammenführen. Statische Websiten bieten laut dem Astro-Team eine hohe Performance zulasten der Fähigkeit, HTML on-demand für jede Anfrage zu generieren. Dort kommt das hybride Rendering ins Spiel, denn es erlaubt das Pre-Rendern bestimmter Seiten, ohne den deployten Server aufzugeben. Auf diese Weise gerenderte Seiten entstehen ahead-of-time, wodurch Anfragen unmittelbar laden.

Astro 2.0 führt Hybrid Rendering ein.

(Bild: Astro)

Um das hybride Rendering zu aktivieren, lässt sich für jede Seite und jeden Server-Endpunkt Pre-Rendering aktivieren. Die Dateien werden statisch zur Build-Zeit gerendert, was dem standardmäßigen statischen output-Modus ähneln soll.

Heise-Konferenz: enterJS Web-Performance Day

Die Veranstalter heise Developer, iX und dpunkt.verlag richten am 15. Februar 2023 den enterJS Web-Performance Day aus. Teilnehmende lernen dort State-of-the-Art Tools für mehr Geschwindigkeit kennen. Performance-Expertinnen und -Experten zeigen in sieben Online-Vorträgen, wie sich Webanwendungen beschleunigen lassen. Deep Dives zu Angular und zu JavaScript gibt es in 2-Tages-Workshops, die ebenfalls online stattfinden.

Astro nutzt das Konzept sogenannter Astro Islands: das Aufteilen des User Interface (UI) einer Website in kleinere, isolierte Komponenten. Das Rendern dieser interaktiven Inseln auf einer ansonsten statischen HTML-Seite kann beispielsweise mit React, Vue oder Svelte erfolgen. Aufmerksamkeit erlangte Astro unter anderem als eines der bemerkenswertesten Projekte in der letztjährigen Studie "JavaScript Rising Stars". In diesem Jahr vollzog es dort den Sprung von Platz 31 in die Top 10.

Unter der Haube aktualisiert das neue Release die Dependency Vite.js, die hinter Astros interner Build-Engine steckt, auf die aktuelle Version 4.0. Zudem hat das Entwicklungsteam eine neue öffentliche Roadmap vorgestellt.

Die Neuerungen in der zweiten Hauptversion präsentiert das Astro-Team in einem Blogeintrag.

(mai)