semantic-color-tokens-compositionlocal

Installation
SKILL.md

Semantic colour tokens through a CompositionLocal

A Material colour scheme covers roles: surfaces, containers, primary/secondary/tertiary, error and the on… pairs. It does not cover colours whose meaning is your app's — the pink that means "liked", the highlight on the active line of a running text, the two tones a shimmer sweeps between, the overlays that dim artwork. Those need a home that is not a scattering of hex literals.

// adapted
@Immutable
data class AppColors(
    val favorite: Color, val lyricActive: Color,
    val shimmerBackground: Color, val shimmerLine: Color,
    val overlay: Color, val overlayHeavy: Color,
)

private val DarkAppColors = AppColors(favorite = favoriteColor, /* … */)
Installs
9
GitHub Stars
1.5K
First Seen
Aug 30, 2026