Alle Docs

DOC/ Aktualisiert am 2026-09-19

Entwicklung

Setup, Befehle und der Beitrags-Workflow dieses Repos.

  • Node.js 24 oder neuer
  • pnpm 12 (über packageManager in package.json gepinnt)

pnpm install

pnpm dev          # turbo dev: Web-App mit HMR
pnpm type-check   # turbo type-check über das ganze Monorepo
pnpm lint         # eslint (next + typescript Regeln), null Warnings
pnpm test         # turbo test (vitest)
pnpm build        # Produktions-Build nach apps/web/.next

Alle Checks müssen vor dem Push bestehen: pnpm lint mit null Fehlern, pnpm type-check mit null Fehlern, pnpm format:check ohne Unterschiede und ein erfolgreicher pnpm build.

  • UI-Strings: packages/i18n/messages/en.json bearbeiten, dann die anderen sechs Sprachdateien übersetzen. Die Schlüsselstruktur identisch halten.
  • Docs: packages/content/docs/en/<slug>.md bearbeiten, dann die Übersetzungen aktualisieren. Fehlende Übersetzungen fallen automatisch auf Englisch zurück.
  • Nach Änderungen an Messages oder Docs pnpm build ausführen und jede Sprachroute im Browser prüfen.

Commits im Repository werden mit der GitLab-Identität des Projekteigentümers erstellt, damit CI-Jobs mit Identitätsprüfung laufen, und jeder Commit trägt einen Co-Author-Trailer:

Co-authored-by: Ella Mizuki

Das ist erforderlich, damit die Pipeline läuft; siehe deployment.md.

main ist geschützt: Push durch Maintainer, Force Push deaktiviert. History-Umschreibungen (etwa das Neu-Zuweisen von Commit-Autoren) erfordern, den Schutz vorübergehend zu entfernen, den Force Push zu machen und ihn mit exakt denselben Einstellungen wiederherzustellen.

Die in .gitlab-ci.yml definierte Pipeline führt vier Jobs aus:

  • quality Lint und Typecheck;
  • semgrep-sast Sicherheits-Scan (Template);
  • build Produktions-Build mit Artefakt;
  • secret_detection Secret-Scan (Template).

Das pnpm-Setup ist auf die Jobs quality und build beschränkt. Die Bilder der Sicherheits-Templates enthalten kein corepack und dürfen es nicht erben.

Die Validierung ist:

  • Lint, Typecheck, Build;
  • Browser-Durchlauf bei 375, 768, 1024, 1440 und 1920px mit null horizontalem Overflow, in allen Sprachen;
  • Reduced-Motion-Durchlauf: kein Shimmer, keine aktiven Übergänge, Inhalt sichtbar;
  • Anker-Navigation räumt den fixen Header frei (Scroll-Padding);
  • Doc-Routen lösen in allen Sprachen auf, einschließlich Englisch-Fallback.