Skip to main content

SplatHash

splathash samples dominant colors from image regions. otter-theme-gen and otter-shot gradients use it to build palettes from screenshots or wallpapers.

Semantic palettes (theme_palette)

Builds coordinated color sets from a seed accent. Feeds otter-theme-gen and shot gradients without pulling full otter-theme into every small tool.

App config sync

app_configs.zig structs follow the same rules as otter-config-types:
  • Defaults on every field
  • ?Color = null for theme-mapped colors
  • Loaded with otter-conf in the app, edited in otter-settings
Keeping schemas here (not in otter-config-types) marks them as small-tool configs separate from desktop daemons.

Boundaries

Don’t add Wayland or render imports here. If a helper needs pixels, decode in the app and pass RGBA slices into splathash or theme_palette.