Foundations
Theming
Build a brand palette, support dark mode and switch themes at runtime.
SKColorScheme derives a full role set from a small number of seed colours, so a brand rollout is a handful of values rather than a spreadsheet of hex codes.
Theme.kt
val Brand = SKColorScheme.fromSeeds(
primary = Color(0xFF4F46E5),
accent = Color(0xFF06B6D4),
neutral = Color(0xFF0B0F19)
)
SKTheme(colorScheme = Brand, dark = isSystemInDarkTheme()) { App() }Runtime switching
Theme changes propagate through a CompositionLocal and only recompose the subtrees that read the changed token family.