Live Changelog
Eine automatisch aktualisierende Changelog-Seite, die nach jedem Commit über GitHub Actions aktualisiert wird. Parst Conventional Commits und zeigt Entwicklungshistorie an.
Eine detaillierte Timeline der Entwicklung, extrahiert aus der Git-Commit-Historie. Diese Seite aktualisiert sich automatisch nach jedem Push auf den Main-Branch.
Changelog wird geladen...
Wie es funktioniert
Der Changelog verwendet einen GitHub Actions Workflow, der:
- Bei Push triggert — Jeder Push auf
mainführt den Workflow aus - Git-Historie parst — Extrahiert Commit-Hash, Autor, Datum und Nachricht
- Commits kategorisiert — Erkennt Conventional Commit-Typen (feat, fix, chore, etc.)
- JSON-Daten aktualisiert — Schreibt nach
data/changelog.json - Änderungen committet — Verwendet
[skip ci]um Endlosschleifen zu verhindern
Tech Stack
| Komponente | Technologie | Zweck |
|---|---|---|
| Automatisierung | GitHub Actions | Trigger bei Push auf main |
| Skript | TypeScript + tsx | Git-Log parsen und JSON generieren |
| Daten | JSON | Geparste Commit-Daten speichern |
| Rendering | Next.js Server Component | Dynamische Seite mit Locale-Support |
| i18n | next-intl | Locale-bewusste Datumsformatierung |
Conventional Commit Parsing
Das Skript erkennt Standard Conventional Commit Präfixe:
feat:— Neue Featuresfix:— Bug Fixeschore:— Wartungsaufgabendocs:— Dokumentations-Updatesrefactor:— Code Refactoringstyle:— Styling-Änderungentest:— Test-Updatesperf:— Performance-Verbesserungen
Commits werden automatisch kategorisiert und Statistiken berechnet.
Schleifen-Prävention
Die GitHub Action vermeidet Endlosschleifen durch:
- Hinzufügen von
[skip ci]zur Commit-Nachricht - Prüfen von
if: "!contains(github.event.head_commit.message, '[skip ci]')"im Workflow
Dateien
.github/workflows/update-changelog.yml # GitHub Action
scripts/generate-changelog.ts # Generierungsskript
data/changelog.json # Generierte Daten
lib/types/changelog.ts # TypeScript-Typen
app/[locale]/changelog/page.tsx # Seitenkomponente
components/changelog-stats.tsx # Statistik-Komponente
components/changelog-table.tsx # Tabellen-Komponente
Outcomes
- •GitHub Actions Workflow triggert bei jedem Push auf main
- •Conventional Commit Parsing (feat, fix, chore, etc.)
- •Commits nach Datum gruppiert mit locale-bewusster Formatierung
- •Volle i18n-Unterstützung über 5 Locales