DOC/ Aktualisiert am 2026-09-19
Deployment
Build, Hosting, Domain und Analytics-Setup.
Die Website wird beim Build von Next.js als statisches HTML erzeugt:
pnpm build
Next.js rendert die Homepage, die Dokumentationsseiten, die Sitemap und die statischen Assets für alle sieben Sprachen vor. Es gibt kein Server-Runtime, also funktioniert jeder statische Host.
Das Produktions-Hosting ist Vercel:
- framework preset: Next.js
- root directory:
apps/web - build command:
pnpm build
Die Domain ist ella.yuricunha.com, konfiguriert in
apps/web/src/data/site.ts und den App-Metadata, die kanonische URLs,
Open Graph und Sitemap steuern.
/docsIndex der verfügbaren Dokumentationsseiten, pro Sprache;/docs/<slug>einzelne Dokumentationsseite, pro Sprache.
Beides sind statische Routen, die beim Build erzeugt werden. Die
Standardsprache (Englisch) hat kein URL-Präfix; andere Sprachen tragen ihr
Präfix, zum Beispiel /pt/docs oder /ja/docs.
- Standard Englisch:
https://ella.yuricunha.com - Andere Sprachen:
https://ella.yuricunha.com/<locale>
Jede Seite deklariert hreflang-Alternates für alle sieben Sprachen, und
die Sitemap listet jede Variante.
Umami ist vorbereitet, aber standardmäßig inert. Die Analytics-Komponente rendert nur, wenn beide Umgebungsvariablen beim Build vorhanden sind:
NEXT_PUBLIC_UMAMI_SRC=https://ihr-umami-host/script.js
NEXT_PUBLIC_UMAMI_WEBSITE_ID=ihre-website-id
Ohne sie liefert die Website null Analytics-JavaScript. Es werden keine Platzhalter-IDs committet.
Die GitLab-Pipeline läuft auf main. Sie wird mit einem GitLab-Profil
erstellt, das Identitätsprüfung hat, weil GitLab.com sich weigert, CI-Jobs
ohne sie auszuführen. Auslösen mit:
glab api --method POST \
"projects/isyuricunha%2Fella-mizuki/pipeline" -f "ref=main"
Prüfen, dass die erzeugte Pipeline success erreicht: quality, build,
SAST und Secret Detection müssen alle bestehen, bevor der Deploy als grün
gilt.
- Metadata, Open Graph, Twitter Cards, Canonical und JSON-LD im Locale-Layout;
robots.txtund Sitemap werden in den Build erzeugt;- die Social Card ist
public/og.png(1200x630, erzeugt mit den Geist- Schriften aus einem gerenderten HTML-Template); - jede Sprache erhält eigene Metadata und hreflang-Alternates.