Overlay Theme System – Zentrale CSS-Tokens, Themes & Presets für alle Widgets #96
Labels
No labels
agent:done
agent:ready
agent:working
area:analytics
area:chatbot
area:community
area:content
area:hardware
area:health
area:media
area:monetization
area:overlays
area:productivity
area:streaming
bug
duplicate
effort:large
effort:medium
effort:small
enhancement
good-first-issue
help wanted
invalid
priority:backlog
priority:critical
priority:high
priority:low
priority:medium
question
quick-win
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
frank/streamertool#96
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Kontext
Aktuell hat jedes Widget (#39, #45, #93, #94, #95) seine eigene Styling-Konfiguration. Streamer müssen Farbe, Schriftart und Größe für jedes Widget einzeln einstellen – aufwändig und inkonsistent.
Ein zentrales Theme-System mit CSS-Tokens (Custom Properties), globalen Themes und widget-spezifischen Overrides macht die gesamte Overlay-Suite einheitlich und professionell.
Ziel
Globales Theme-System für alle Overlay-Widgets:
1. CSS-Token-System
--primary: Primärfarbe (Akzente, Highlights)--secondary: Sekundärfarbe (Sub-Text, Badges)--background: Hintergrundfarbe (Overlay-Hintergrund)--surface: Oberflächenfarbe (Widget-Karten, Boxen)--text: Textfarbe (Haupttext)--text-muted: Textfarbe gedimmt (Subtitel, Timestamps)--success: Grün (Follows, Subs, positive Events)--warning: Gelb/Orange (Raid, Aufmerksamkeit)--danger: Rot (Bits, große Events)--info: Blau (Informationen, Links)--font-family: Schriftart (Google Fonts + Custom Upload)--font-size-xs: Extra klein (12px)--font-size-sm: Klein (14px)--font-size-base: Basis (16px)--font-size-lg: Groß (20px)--font-size-xl: Extra groß (24px)--font-size-xxl: Titel (36px)--font-weight-normal,--font-weight-bold--spacing-xsbis--spacing-xxl(4px bis 32px)--border-radius: Ecken-Abrundung (4px / 8px / 12px)--border-width: Rahmenstärke--shadow: Box-Schatten (Subtle / Medium / Strong)--transition-speed: Einblend-Dauer (150ms / 300ms / 500ms)--animation-easing: Easing-Funktion (ease / ease-out / cubic-bezier)--opacity-dimmed: Gedimmte Opacity (0.5 / 0.7)2. Vorgefertigte Themes
3. Widget-Override-Modell
4. Theme-Editor (Admin-UI)
5. Integration mit Overlay-Server
/overlay/theme.css– liefert CSS-Tokens als Stylesheet<style>-Block eingefügt6. Technische Umsetzung
overlay_themes-Tabelle)document.documentElement.style.setProperty()für Hot-ReloadTechnische Leitplanken
Akzeptanz
/overlay/theme.cssliefert gültiges CSSReferenzen