Cerberus provides a set of palettes that have an intentional purpose which contribtutes to the
overall theme. This creates a clear, consistent color scheme that can be easily customized.
Warning
We recommend always using Semantic Tokens and not primtives for color values. Primitives will eventually become private and are static by nature (e.g., they have no context of the theme or color mode).
Naming Convention
Cerberus uses a naming convention for semantic tokens to ensure clarity and maintainability. Each color is named based on its purpose and context, making it easier to understand its intended use.
Semantic token naming convention:
[palette].[usage].[prominence?].[interaction?]
Name
Description
Palette
The category/context of where the color is used.
Usage
How the color is used within the context.
Prominence
Optional.The hierarchy of the color used within the page context.
Interaction
Optional. The element interaction type the color should be applied to.
Page
Used for pages, layouts, and any other container that is relative to a page.
Used for data visualization elements, such as charts, graphs, and other visual representations of data.
dataViz.diverging.50warning.60#f1d11b
dataViz.diverging.100warning.50#f4da49
dataViz.diverging.200warning.40#f7e376
dataViz.diverging.300warning.30#f9eda4
dataViz.diverging.400warning.20#fcf6d1
dataViz.diverging.500neutral.10#eeedf2
dataViz.diverging.600brand.30#bb93e1
dataViz.diverging.700brand.40#9f66d3
dataViz.diverging.800brand.50#7f33c4
dataViz.diverging.900brand.60#5f00b5
dataViz.sequential.100brand.10#efe5f8
dataViz.sequential.200brand.40#9f66d3
dataViz.sequential.300brand.50#7f33c4
dataViz.sequential.400brand.70#4c0091
dataViz.sequential.500brand.80#39006d
dataViz.sequential.600brand.90#260048
dataViz.qualitative.100brand.50#7f33c4
dataViz.qualitative.200warning.60#f1d11b
dataViz.qualitative.300success.60#12b24a
dataViz.qualitative.400info.50#35a0dd
dataViz.qualitative.500brand.30#bb93e1
dataViz.qualitative.600accent.70#3fb6b4
dataViz.qualitative.700neutral.40#776f90
dataViz.progress.startbrand.40#9f66d3
dataViz.progress.endbrand.70#4c0091
dataViz.progress.completesuccess.60#12b24a
Primitives
Cerberus provides a comprehensive set of primitive colors (theme.tokens.colors) that serve as the foundation for all semantic tokens. These are the raw color values that semantic tokens reference.
Primitive colors are organized by color families and include numerical scales (e.g., neutral.0 to neutral.100) that provide fine-grained control over color variations. These colors form the building blocks that semantic tokens reference to create meaningful, contextual color usage.
How Primitives Relate to Semantic Tokens:
Semantic tokens like page.bg.initial reference primitive colors using token syntax: {colors.cerberus.neutral.5}
This creates a clear hierarchy: primitives → semantic tokens → component usage
Customizing primitive colors automatically updates all semantic tokens that reference them