Initial commit: add styleguide project
This commit is contained in:
@@ -0,0 +1,235 @@
|
||||
---
|
||||
name: styleguide erstellung
|
||||
description: Verwenden für jede Weiterentwicklung des Styleguides. Erzwingt eine sauber kaskadierende, skalierbare Design-System-Architektur mit klarer Trennung von Foundations, semantischen Tokens, Components, Patterns, Layouts, Templates und Usage Guidelines. Nutze diesen Skill immer, wenn CSS, HTML, Tokens, Components, Patterns, Layouts, Templates, Dokumentation oder Styleguide-Strukturen geändert, erweitert oder geprüft werden.
|
||||
---
|
||||
|
||||
# Styleguide-Erstellung
|
||||
|
||||
## Ziel
|
||||
|
||||
Pflege und erweitere den Styleguide als skalierbares Design-System für große Webportale.
|
||||
|
||||
Jede Änderung muss:
|
||||
|
||||
- sauber kaskadieren,
|
||||
- der richtigen Styleguide-Ebene zugeordnet sein,
|
||||
- bestehende Bausteine respektieren,
|
||||
- langfristig wartbar und wiederverwendbar sein,
|
||||
- zentral über Foundation Tokens und semantische Tokens in `styleguide.css` steuerbar bleiben,
|
||||
- ohne lokale Sonderlösungen, visuelle Nachbauten oder Workarounds auskommen.
|
||||
|
||||
## Verbindliche Struktur und Kaskade
|
||||
|
||||
Der Styleguide wird nach dieser Kaskade entwickelt:
|
||||
|
||||
```text
|
||||
Foundations / Grundlagen
|
||||
→ Semantische Tokens / Design Tokens
|
||||
→ Components / Komponenten
|
||||
→ Patterns / Muster
|
||||
→ Layouts
|
||||
→ Templates / Seitentemplates
|
||||
→ Usage Guidelines / Anwendungsrichtlinien
|
||||
```
|
||||
|
||||
Jede neue oder geänderte Lösung muss der passenden Ebene zugeordnet werden; Component- und Pattern-Kapitel dokumentieren dabei die semantischen Tokens, die dort verwendet werden.
|
||||
|
||||
## Ebenenregeln
|
||||
|
||||
### Foundations
|
||||
|
||||
Foundations sind die einzige Quelle für konkrete visuelle Werte, z. B. Farben, Typografie, Spacing, Grid, Icons, Shadows, Border-Radius, Motion, Breakpoints, Z-Index und Containergrößen.
|
||||
|
||||
Neue oder geänderte Foundation-Werte nur nach Rückfrage und expliziter Freigabe einführen.
|
||||
|
||||
### Semantische Tokens / Design Tokens
|
||||
|
||||
Semantische Tokens abstrahieren Foundation Tokens nach Bedeutung, Zweck oder Verwendung im Interface und werden zentral in `styleguide.css` gepflegt.
|
||||
|
||||
Sie benennen nicht den konkreten visuellen Wert, sondern die Rolle im System, z. B. `surface-button-active`, `text-button-process` oder `layout-input-label-width`.
|
||||
|
||||
Regeln:
|
||||
|
||||
- Keine hardcoded Design Values außerhalb der Foundations.
|
||||
- Semantische Tokens sind Aliase oder Kaskaden auf Foundation Tokens.
|
||||
- Neue oder geänderte semantische Tokens an der fachlich passenden Stelle in `styleguide.css` ergänzen.
|
||||
- Struktur, Reihenfolge, Gruppierung, Kommentarlogik und Benennungssystematik von `styleguide.css` einhalten.
|
||||
- HTML-Dateien dürfen keine lokalen Token-Blöcke, keine eigenen `:root`-Definitionen und keine abweichenden Token-Definitionen enthalten.
|
||||
- HTML-Dateien dürfen semantische Tokens nur aus `styleguide.css` referenzieren.
|
||||
|
||||
Ergänzungen semantischer Tokens dokumentieren mit:
|
||||
|
||||
- Token-Name
|
||||
- Token-Typ: Foundation oder semantischer Token für Component, Pattern, Layout oder Template
|
||||
- Wert oder Alias-Ziel
|
||||
- kurzer Zweck
|
||||
|
||||
Wenn Foundation Tokens ergänzt oder geändert werden, `foundations.html` nachführen.
|
||||
Wenn semantische Tokens für Components, Patterns, Layouts oder Templates ergänzt oder geändert werden, die passende Token-Dokumentation nachführen, insbesondere `semantic-tokens-components.html`, sofern dort die bestehende Struktur dafür vorgesehen ist.
|
||||
|
||||
### Components
|
||||
|
||||
Components sind kanonische, wiederverwendbare UI-Bausteine.
|
||||
|
||||
Component-Kapitel dokumentieren die semantischen Tokens, die eine Komponente verwendet, jeweils mit zugeordnetem Foundation Token und Verwendungszweck innerhalb der Komponente.
|
||||
|
||||
Ohne explizite Freigabe nicht erlaubt:
|
||||
|
||||
- Component-HTML verändern
|
||||
- Component-Klassen verändern, ergänzen oder entfernen
|
||||
- Component-Nesting verändern
|
||||
- Component-Semantik verändern
|
||||
- Component-Varianten erfinden
|
||||
- Components visuell nachbauen
|
||||
- Component-Internals von außen überschreiben
|
||||
|
||||
### Patterns
|
||||
|
||||
Patterns kombinieren bestehende Components für konkrete Anwendungsfälle.
|
||||
|
||||
Pattern-Kapitel dokumentieren die semantischen Tokens, die ein Pattern verwendet, jeweils mit zugeordnetem Foundation Token und Verwendungszweck innerhalb des Patterns.
|
||||
|
||||
Erlaubt:
|
||||
|
||||
- eigene Pattern-Klassen
|
||||
- eigene Layout-/Wrapper-Strukturen
|
||||
- Pattern-spezifische Responsiveness
|
||||
- Pattern-spezifische Komposition
|
||||
|
||||
Nur erlaubt, wenn bestehende Components unverändert eingebettet werden.
|
||||
|
||||
Verboten ohne Freigabe:
|
||||
|
||||
```css
|
||||
.pattern .component-internal-class { ... }
|
||||
.pattern .sg-card-segment { ... }
|
||||
.pattern .sg-button__label { ... }
|
||||
```
|
||||
|
||||
Wenn ein Pattern Component-Internals stylen müsste, nicht umsetzen. Rückfrage stellen und begründen, ob ein Component-Token, eine Component-Variante oder eine andere architektonische Lösung nötig ist.
|
||||
|
||||
### Layouts
|
||||
|
||||
Layouts regeln Struktur, Container, Raster und Anordnung.
|
||||
|
||||
Layouts dürfen Flächen strukturieren, Spalten und Container definieren, Abstände zwischen größeren Bereichen steuern und responsive Seitenanordnung regeln.
|
||||
|
||||
Layouts dürfen keine Component-Optik ersetzen, keine Pattern-Logik nachbauen, keine Component-Internals überschreiben und keine lokalen Designwerte einführen.
|
||||
|
||||
### Templates
|
||||
|
||||
Templates beschreiben wiederkehrende Seitentypen.
|
||||
|
||||
Templates verwenden bestehende Layouts, Patterns und Components. Sie dürfen keine neuen visuellen Grundlagen, Component-Varianten oder Pattern-Logiken erfinden.
|
||||
|
||||
### Usage Guidelines
|
||||
|
||||
Usage Guidelines dokumentieren die korrekte Verwendung des Systems.
|
||||
|
||||
Sie klären insbesondere:
|
||||
|
||||
- wann welches Pattern verwendet wird,
|
||||
- responsive Verhalten,
|
||||
- Accessibility,
|
||||
- Dos & Don’ts,
|
||||
- Abgrenzung ähnlicher Components, Patterns, Layouts oder Templates.
|
||||
|
||||
Guidelines müssen präzise, praxisnah und konsistent mit der bestehenden Styleguide-Struktur formuliert werden.
|
||||
|
||||
## Arbeitsablauf
|
||||
|
||||
Vor jeder Umsetzung:
|
||||
|
||||
1. Task-Scope bestimmen.
|
||||
2. Bestehenden Code und relevante Dokumentation im Scope analysieren.
|
||||
3. Styleguide-Ebene der Änderung bestimmen.
|
||||
4. Prüfen, ob bestehende Foundation Tokens, semantische Tokens, Components, Patterns, Layouts oder Templates verwendet werden können.
|
||||
5. Offene oder nicht belegte Punkte klären.
|
||||
|
||||
Nicht umsetzen, solange eine notwendige Grundlage fehlt.
|
||||
Wenn etwas nicht eindeutig im Code, in der Dokumentation oder in der Aufgabe belegt ist, Rückfrage stellen.
|
||||
|
||||
## Scope und Grenzen
|
||||
|
||||
Keine Änderungen außerhalb des expliziten Task-Scopes.
|
||||
|
||||
Nicht erlaubt ohne Freigabe:
|
||||
|
||||
- bestehende Components umbauen
|
||||
- Foundation Tokens oder semantische Tokens umbenennen
|
||||
- Kaskade von Foundation Tokens zu semantischen Tokens verändern
|
||||
- CSS-Struktur aufräumen
|
||||
- HTML-Struktur verbessern, wenn nicht beauftragt
|
||||
- neue Foundation-Werte einführen
|
||||
- neue Component-Varianten erfinden
|
||||
- bestehende Dokumentationsstruktur neu sortieren
|
||||
|
||||
Neue HTML-Seiten nur dann in `index.html` ergänzen, wenn tatsächlich neue Seiten angelegt werden. Bei reinen Änderungen bestehender Seiten ist keine `index.html`-Anpassung erforderlich.
|
||||
|
||||
## Anti-Insellösung
|
||||
|
||||
Jede Lösung muss systemfähig sein.
|
||||
|
||||
Verboten:
|
||||
|
||||
- lokale Styles zur Umgehung der Architektur
|
||||
- seitenlokale Sonderregeln statt zentraler Foundation Tokens oder semantischer Tokens
|
||||
- visuelle Nachbauten bestehender Components
|
||||
- Workarounds, die Architekturdefizite verdecken
|
||||
- Legacy-Fehlmuster kopieren
|
||||
- direkte Designwerte in Components, Patterns, Layouts, Templates oder HTML-Dateien
|
||||
|
||||
Technische CSS-Werte sind erlaubt, wenn sie keine Designentscheidung darstellen, z. B.:
|
||||
|
||||
```css
|
||||
display: flex;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
min-width: 0;
|
||||
width: 100%;
|
||||
height: auto;
|
||||
flex: 1 1 auto;
|
||||
```
|
||||
|
||||
Wenn unklar ist, ob ein Wert eine Designentscheidung ist: Rückfrage stellen.
|
||||
|
||||
## Unsicherheiten
|
||||
|
||||
Bewerte relevante Aussagen als:
|
||||
|
||||
- **belegt**: direkt im Code oder in der Dokumentation nachweisbar
|
||||
- **plausibel**: ableitbar, aber nicht eindeutig belegt
|
||||
- **nicht belegt**: benötigt Rückfrage oder Freigabe
|
||||
|
||||
Nicht belegte Punkte dürfen nicht umgesetzt werden.
|
||||
|
||||
## Abschlusscheck
|
||||
|
||||
Vor Abschluss prüfen:
|
||||
|
||||
- richtige Styleguide-Ebene gewählt
|
||||
- Kaskade Foundations → semantische Tokens → Components → Patterns → Layouts → Templates → Usage Guidelines eingehalten
|
||||
- keine hardcoded Design Values außerhalb der Foundations
|
||||
- neue oder geänderte semantische Tokens in `styleguide.css` gepflegt
|
||||
- bestehende Struktur von `styleguide.css` eingehalten
|
||||
- betroffene Dokumentation nachgeführt
|
||||
- Components unverändert verwendet
|
||||
- keine Component-Internals überschrieben
|
||||
- Pattern-CSS steuert nur Komposition, Layout und Responsiveness
|
||||
- Layout-CSS steuert nur Struktur und Anordnung
|
||||
- Templates verwenden bestehende Layouts, Patterns und Components
|
||||
- keine lokalen Token-Blöcke oder `:root`-Definitionen in HTML-Dateien
|
||||
- keine Refactorings außerhalb Scope
|
||||
- keine Insellösungen oder Workarounds eingeführt
|
||||
|
||||
## Ergebnisbericht
|
||||
|
||||
Nach Umsetzung kurz berichten:
|
||||
|
||||
- geänderte Dateien
|
||||
- relevante geprüfte Dateien
|
||||
- gewählte Styleguide-Ebene
|
||||
- verwendete oder ergänzte Foundation Tokens und semantische Tokens
|
||||
- verwendete Components, Patterns, Layouts oder Templates
|
||||
- nachgeführte Dokumentation
|
||||
- offene Punkte oder benötigte Freigaben
|
||||
Reference in New Issue
Block a user