Warum Astro
Astro shippt standardmäßig null JavaScript. Dein Content rendert auf dem Server zu plain HTML, und interaktive Islands hydratisieren nur dort, wo du es willst. Für eine content-lastige persönliche Site — Blog, Research, Galerien — ist das genau der Tausch, den du willst.
Der 45-Minuten-Weg
npm create astro@latest— Blog-Template wählen, TypeScript strict.- Content Collection in
src/content.config.tsmit Zod-Schema definieren. - Schreibe deinen ersten
.mdx-Post — Frontmatter wird zur Build-Zeit validiert. [slug].astro-Seite mitgetStaticPaths()+render()hinzufügen.- Deploy:
astro builderzeugt ein komplett statischesdist/, das du überall hosten kannst.
Islands: der Teil, den alle übersehen
<Hero client:load /> <!-- hydratisiert sofort -->
<Chart client:visible /> <!-- hydratisiert beim Reinscrollen -->
<Comments client:idle /> <!-- hydratisiert, wenn der Browser idle ist -->
Nimm client:visible für alles unterhalb der Fold. Dein Lighthouse-Score wird es dir danken.
Wie weiter
i18n mit [locale]-Routen dazubauen — das ist eine eigene Lektion.