Skip to content

Palette

Version: v1 (minor version 0) Scope: global Owning service: studio-design-library

A Palette defines the ordered set of RGB colors available on a particular ESL display technology. ESL labels are not full-color displays; each model supports a small fixed set of colors (typically 2–4). The palette describes exactly which colors are available, in order, so that the Studio designer can present the correct color picker and so that renderers can map palette indices to actual RGB values. Palettes are global — they describe hardware capabilities, not tenant-specific configuration.

ID pattern

palettes/{paletteid}

Segment Meaning
palettes Fixed collection name
{paletteid} Short mnemonic derived from the color set, e.g. BW (black+white), BWRY (black+white+red+yellow)

Examples referenced elsewhere in the system: palettes/BW, palettes/BWY, palettes/BWR, palettes/BWRY.

Schema

Field Type Description
id string Full resource name following the ID pattern above
colors repeated RgbColor Ordered list of colors in this palette. The position in the list corresponds to the palette index used by design tools and renderers.

RgbColor message

Field Type Description
red uint32 Red channel, valid range 0–255
green uint32 Green channel, valid range 0–255
blue uint32 Blue channel, valid range 0–255

Usage

palette_id is referenced by: - Design.palette_id — specifies the color space the design was created for - Canvasdesign.palette_id — same, for canvas-spanning designs - Canvastype.palette_id — the best palette compatible with all ESL types in a canvas

The deprecated ColorSpace enum fields in those DTOs (BW, BWY, BWR, BWRY) map directly to the conventional palette IDs (palettes/BW, etc.) and exist only for backward compatibility with older records.

Consumed by

Service Why
Studio UI Renders the correct color picker based on the colors available in the palette
studio-renderer Maps palette indices to RGB values when compositing design layers
studio-design-library Validates that a new design's palette is compatible with its target ESL or canvas type
  • design — references palette via palette_id
  • canvasdesign — references palette via palette_id
  • canvastype — references palette via palette_id