Seiten
Inhalt
CHAT-002 – Version-Pill: Layout-Entscheidung im Default Template / Theme
Status: ACCEPTED Datum: 2026-03-10 Version: v1.3.0
Kontext
In v1.3.0 wurden mehrere Stellen eingeführt, die eine Version-Pill darstellen: die Sidebar-Footer, der Login-Footer und die Info-Seite (Status-Pills). Die Frage war: einheitliches Aussehen oder kontextabhängig?
Entscheidung
Einheitliches Format überall:
| VERSION: RC-V1.3.0-ABC123 |
- Kein
border-radius: 999px(keine Kapsel-Form) border-radius: 2px– eckig, konsistent mit dem restlichen Design-System- Schrift:
var(--mono),10px,letter-spacing: 0.08em - Farbe:
var(--text-dim), Hover:var(--accent2) - Border:
1px solid var(--border), Hover:var(--accent2) - Inhalt: dynamisch aus
version.jsonviainitVersionPills()
Technisch: data-version-pill Attribut auf dem Link-Element.
initVersionPills() in modules/ui.js befüllt alle Elemente automatisch.
Stellen
| Ort | Element | Initialisierung |
|---|---|---|
| Sidebar Footer | <a data-version-pill> |
onShellMount → initVersionPills() |
| Login Footer | <a data-version-pill> |
initLogin → initVersionPills() |
| Info Status-Pills | #status-version-value |
initInfo → initVersionPills() |
Begründung
- Konsistenz: Der Nutzer sieht überall denselben Stil
- Dynamisch: Git-Hash und Branch aus
version.json– kein hardcoded String - Erweiterbar: Neue Screens brauchen nur
data-version-pillAttribut - Design: Eckige Pills passen zum Mono-Font-lastigen Dark-Theme besser als Kapseln
Alternativen verworfen
- Kapsel-Form (
border-radius: 999px): Zu rund für das strenge Grid-/Mono-Ästhetik - Nur Text, kein Border: Zu wenig visueller Abstand vom umliegenden Content
- Kontextabhängiges Styling: Mehr Inkonsistenz, kein Mehrwert
Konsequenzen
- Alle bisherigen hardcoded
v1.3.0Strings in Pills sind durchdata-version-pillersetzt generate-version-dev.shund Docker Build generierenversion.jsonmit Branch + Hash- Format-Konvention:
RC-V1.3.0-ABC123(uppercase) für RC-Branches