Design-Tokens, Themes und Light/Dark für Iris (Mac) und IrisRemote (iOS) – Swift Package
Find a file
2026-10-31 14:09:00 +01:00
Sources/IrisDesign feat(web): Theme-Brücke irisFollowTheme für WebViews (iris/Iris#261) 2026-10-31 14:09:00 +01:00
Tests/IrisDesignTests feat(web): Theme-Brücke irisFollowTheme für WebViews (iris/Iris#261) 2026-10-31 14:09:00 +01:00
.gitignore feat(palette): Package IrisDesign mit Iris-Palette, Theme und Modus (iris/Iris#261) 2026-10-31 11:54:54 +01:00
Package.swift feat(palette): Package IrisDesign mit Iris-Palette, Theme und Modus (iris/Iris#261) 2026-10-31 11:54:54 +01:00
README.md feat(themes): Graphit und Papier, Theme-Wechsel zur Laufzeit (iris/Iris#261) 2026-10-31 12:31:29 +01:00

IrisDesign

Design-Tokens, Themes und Light/Dark für Iris (macOS) und IrisRemote (iOS), als Swift Package.

  • Palette: Farbwerte eines Themes (iris, graphit, papier), je Token ein Paar aus Hell und Dunkel.
  • Theme und ThemeMode: Auswahl der Palette und des Modus (System, Hell, Dunkel), pro Gerät in UserDefaults (uiTheme, uiThemeMode).
  • IrisColors: die Tokens als Color; sie lösen Modus und aktives Theme beim Zeichnen auf.
  • Theme.activate(): wählt ein Theme, speichert es und zeichnet die App neu (ohne Neustart).
  • ThemeMode.applyToApp(): setzt den Modus app-weit (AppKit/UIKit).

Ein neues Theme ist eine neue Palette plus ein Fall in Theme; swift test prüft den Kontrast jeder Palette in beiden Modi.

Tests: swift test.

Issue: iris/Iris#261 (Mac), iris/2ndbrain-ios#64 (iOS).