Tutorial #Leitfaden#Astro

Erste Schritte mit Astro-Theme-Aither

2026-03-14 · 357 Wörter · 1 Min.

Alles, was Sie zum Installieren, Konfigurieren, Anpassen und Deployen von Astro-Theme-Aither brauchen, auf einer Seite.

Diese Anleitung bringt Sie von null bis zu einem bereitgestellten, mehrsprachigen Blog. Lesen Sie alles der Reihe nach oder springen Sie direkt zum Abschnitt, den Sie gerade brauchen.

Voraussetzungen

  • Node.js 22 LTS oder neuer
  • pnpm 10 oder neuer
  • Ein GitHub-Konto
  • Ein Cloudflare Konto (für die Bereitstellung)

Installation

Terminal windowBash
git clone https://github.com/YOUR_USERNAME/YOUR_REPO.git
cd YOUR_REPO
corepack enable
pnpm install
pnpm validate
pnpm dev

Öffnen Sie anschließend http://localhost:4321 im Browser.

Projektstruktur

src/
├── components/ # Astro- und React-Komponenten
├── config/site.ts # Name, Navigation, Footer, Social Links
├── content/posts/ # Beiträge nach Locale
├── i18n/ # UI-Übersetzungen
├── layouts/ # Layout-Komponenten
├── lib/ # Hilfsfunktionen
├── pages/ # Seiten und Routen
└── styles/global.css # Tailwind-v4-Token

Konfiguration

Site Config

src/config/site.ts ist die zentrale Konfigurationsdatei für den gesamten Blog:

export const siteConfig = {
name: 'Ihr Blogname',
title: 'Ihr Untertitel',
description: 'Ihre SEO-Beschreibung',
author: {
name: 'Ihr Name',
avatar: '',
},
};

Wichtige Bereiche:

BereichFunktion
nameSeitentitel in Navigation und Footer
socialFooter-Links wie GitHub, X, Discord, E-Mail und RSS
navEinträge der Hauptnavigation
footer.sectionsLinkspalten im Footer
ui.defaultModeStandardmodus: light, dark oder system
ui.defaultStyleStandardstil wie default oder evolution
ui.showMoreThemesMenuZeigt oder versteckt den More-Themes-Menüpunkt
blog.paginationSizeBeiträge pro Seite
sectionsEigene Inhaltssammlungen

Umgebungsvariablen

Terminal windowBash
cp .env.example .env

Leere Variablen deaktivieren die jeweilige Integration automatisch.

VariableDienstErforderlich
PUBLIC_GA_IDGoogle AnalyticsNein
PUBLIC_CRISP_WEBSITE_IDCrisp ChatNein
PUBLIC_GISCUS_REPOGiscusNein
PUBLIC_GISCUS_REPO_IDGiscusNein
PUBLIC_GISCUS_CATEGORYGiscusNein
PUBLIC_GISCUS_CATEGORY_IDGiscusNein

Site URL

Die Produktions-URL wird in astro.config.mjs gesetzt:

import { defineConfig } from 'astro/config';
import aither from '@aither/astro';
export default defineConfig({
site: 'https://your-domain.pages.dev',
integrations: [aither()],
});

Beiträge schreiben

Erstellen Sie eine neue .mdx-Datei in src/content/posts/en/:

---
title: Mein erster Beitrag
date: "2026-03-14T16:00:00+08:00"
category: General
description: Kurze Zusammenfassung für SEO und Social Previews.
tags: [Topic, Another]
pinned: false
---
Ihr Inhalt beginnt hier.

Frontmatter-Referenz

FeldTypPflichtBeschreibung
titlestringJaBeitragstitel
datedateJaVeröffentlichungszeitpunkt (z. B. 2026-03-14T16:00:00+08:00)
categorystringNeinEinzelne Kategorie
descriptionstringNeinSEO-Beschreibung
tagsstring[]NeinSchlagwörter
pinnedbooleanNeinBeitrag oben anheften
imagestringNeinTitelbild

MDX-Komponenten

MDX erlaubt das Einbinden interaktiver Komponenten direkt im Inhalt:

import MyChart from '@/components/MyChart'
<MyChart data={[10, 20, 30]} />

Internationalisierung

Das Theme unterstützt standardmäßig 11 Sprachen, darunter Englisch, vereinfachtes Chinesisch, traditionelles Chinesisch, Deutsch, Französisch, Italienisch, Spanisch, Russisch, Koreanisch, Indonesisch und brasilianisches Portugiesisch.

Für eine übersetzte Version legen Sie dieselbe Datei im Zielordner an:

src/content/posts/en/my-post.mdx
src/content/posts/de/my-post.mdx
src/content/posts/zh-hans/my-post.mdx

UI-Texte liegen in src/i18n/messages/.

Eigene Inhaltsbereiche

Zusätzliche Sammlungen wie Übersetzungen, Notizen oder Tutorials lassen sich über src/content.config.ts und src/config/site.ts registrieren. Danach werden Listen-, Detailseiten und Navigationseinträge automatisch erzeugt.

Theming

Es gibt zwei Ebenen:

  • Farbmodus: light, dark, system
  • Stilmodus: default oder ein eingebauter Stil wie evolution

In src/config/site.ts:

ui: {
defaultMode: 'system',
defaultStyle: 'default',
showMoreThemesMenu: true,
},

Farben kommen aus CSS-Variablen in src/styles/global.css. Standardmäßig nutzt das Theme einen System-Sans-Stack; Code und Protokollflächen verwenden eine Monospace-Schrift.

SEO und AI

Jede Seite liefert bereits die wichtigsten Maschinen- und SEO-Schnittstellen:

  • /sitemap-index.xml
  • /rss.xml
  • /robots.txt
  • /llms.txt
  • /llms-full.txt
  • /posts/slug.md
  • JSON-LD und Open-Graph-Metadaten

Bereitstellung

Cloudflare Pages

Empfehlung: Legen Sie das Pages-Projekt zuerst an. Der Ablauf verwendet standardmäßig den Repository-Namen oder CLOUDFLARE_PAGES_PROJECT_NAME, wenn Sie ihn überschreiben möchten.

Richten Sie diese GitHub-Secrets ein:

  • CLOUDFLARE_API_TOKEN
  • CLOUDFLARE_ACCOUNT_ID

Führen Sie danach pnpm validate aus und pushen Sie nach main.

Nützliche Befehle

BefehlBeschreibung
pnpm devLokalen Entwicklungsserver starten
pnpm validateVollständige Validierung vor dem Push ausführen
pnpm buildProduktions-Build erstellen
pnpm previewProduktions-Build lokal testen

Versionsschema

Öffentliche Release-Tags folgen CalVer-Namen wie v2026.04.08.

Ende · Danke fürs Lesen

Kommentare