managarten/docs/DEVLOG_GUIDELINES.md
Till JS d29348d906 docs: add devlog for morning session + update guidelines to session-based
Switch devlog convention from daily to session-based (vormittag/abend).
Add devlog for Manalink prod-readiness work and deployment.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 13:20:40 +01:00

106 lines
3.6 KiB
Markdown

# Devlog Guidelines
## Zeitraum-Konvention
**Devlogs werden pro Arbeitssession geschrieben, nicht pro Tag:**
- Eine "Session" ist ein zusammenhängender Arbeitszeitraum (z.B. Vormittag, Nachmittag, Abend)
- Pro Tag können mehrere Devlogs entstehen (z.B. `2026-03-23-vormittag-manalink-prod.md` und `2026-03-23-abend-citycorners-features.md`)
- Der Dateiname enthält die Session-Bezeichnung zur Unterscheidung
- `workingHours` im Frontmatter bilden den tatsächlichen Session-Zeitraum ab
**Beispiele für Session-Bezeichnungen:** `vormittag`, `nachmittag`, `abend`, `nacht`
Falls nur eine Session an einem Tag stattfindet, kann die Session-Bezeichnung weggelassen werden.
## Dateistruktur
Devlogs werden im Verzeichnis `apps/manacore/apps/landing/src/content/devlog/` gespeichert.
**Dateiname-Format:** `YYYY-MM-DD-kurze-beschreibung.md`
Beispiel: `2026-01-30-matrix-bots-llm-playground.md`
## Frontmatter Schema
```yaml
---
title: 'Titel des Devlogs'
description: 'Kurze Beschreibung der wichtigsten Änderungen (max. 2 Sätze)'
date: YYYY-MM-DD
author: 'Till Schneider'
category: 'feature' # release | infrastructure | feature | bugfix | update
tags:
[
'tag1',
'tag2',
'tag3',
]
featured: true # oder false
commits: 42 # Anzahl der Commits an diesem Tag
readTime: 15 # Geschätzte Lesezeit in Minuten
# Extended Stats für Aktivitätsgrid
stats:
filesChanged: 289
linesAdded: 17857
linesRemoved: 2113
# Contributors (wer hat an diesem Tag gearbeitet)
contributors:
- name: 'Till Schneider'
handle: 'Till-JS'
commits: 42
# Working Hours (tatsächlicher Session-Zeitraum)
workingHours:
start: '2026-01-30T09:00'
end: '2026-01-30T13:30'
---
```
## Kategorien
| Kategorie | Verwendung |
| -------------- | ----------------------------------------------- |
| `release` | Neue Versionen, Production Deployments |
| `infrastructure` | Server-Setup, DevOps, Docker, CI/CD |
| `feature` | Neue Features, Apps, Services |
| `bugfix` | Fehlerbehebungen |
| `update` | Allgemeine Updates, Refactoring, Dependencies |
## Inhalt-Struktur
1. **Einleitung** - Kurze Zusammenfassung mit Bullet Points der Hauptthemen
2. **Hauptsektionen** - Detaillierte Beschreibung der Features/Änderungen
3. **Bugfixes** (optional) - Tabelle der behobenen Fehler
4. **Zusammenfassung** - Tabelle mit Bereichen, Commit-Anzahl und Highlights
5. **Nächste Schritte** - Was als nächstes geplant ist
## Git-Stats abrufen
```bash
# Commits für einen Arbeitstag zählen (11:00 - 11:00 des Folgetages)
git log --since="YYYY-MM-DD 11:00" --until="YYYY-MM-DD+1 11:00" --oneline | wc -l
# Detaillierte Stats (files, insertions, deletions)
git log --since="YYYY-MM-DD 11:00" --until="YYYY-MM-DD+1 11:00" --shortstat --format="" | \
awk '{files+=$1; ins+=$4; del+=$6} END {print "files:", files, "insertions:", ins, "deletions:", del}'
```
## Aktivitätsgrid
Die Aktivitätsgrid-Seite ist unter `/devlog/activity` erreichbar und zeigt:
- **GitHub-Style Contribution Grid** - Aktivität der letzten 365 Tage
- **Gesamt-Statistiken** - Commits, Dateien, Lines Added/Removed
- **Contributors** - Wer hat wie viel beigetragen
- **Letzte Aktivität** - Die 5 neuesten Devlogs
## Best Practices
- Technische Details mit Code-Beispielen und Architektur-Diagrammen illustrieren
- Tabellen für Feature-Listen und API-Endpunkte verwenden
- ASCII-Diagramme für Architektur-Übersichten
- Deutsche Sprache für den Content (technische Begriffe auf Englisch)
- Tags sollten alle relevanten Technologien und Features abdecken