Types of tokens

The types of tokens used for building your design system in Supernova.

Color

A color token defines a color used in your design system. It can be defined as a HEX, RGB, or HSB value with an optional opacity. These tokens are be used wherever you want to apply a color in your design system — for example, as a property of a component — and can also be used as a part of other token definitions (see token referencing).

A color token value is the color itself, regardless of format, so multiple formats can be used and displayed in your design system for different purposes (i.e. HEX and RGB).

Example

Name (key)

Value

blue-50

#4589FF


Typography

Typography tokens contain the information for an entire font style. They are a bit more complex than other tokens, but they can be imported directly from your design editor.

Required values:

  • font-family, font-weight, size, and line-height

Optional values (if these values are not specified, the default will be used):

  • paragraph-spacing, paragraph-indent, letter-spacing, case (transform), and decoration

Font

A font token defines a font family in your design system, with no other design attributes. To learn how it can be used as a part of typography tokens, see Creating token Aliases.

Example

Name (key)

Value

default-system-font

SF Pro


Gradient

A gradient token defines a gradient within your design system.

Example

Name (key)

Value

overlay-gradient

radial-gradient(#f69d3c, #3f87a6)


Border

A border token defines a border within your design system. The values required are color, width and style. The color value can optionally refer to a color token, see token referencing for more information.

Example

Name (key)

Value

accent-border-color

2px solid blue


Shadow

Shadow tokens have a type (inner or drop) and can consist of color, x, y, blur, and spread. The color value can optionally refer to a color token, see token referencing for more information.

Example

Name (key)

Value

tile-shadow-light

2px 2px 2px 1px rgba(0, 0, 0, 0.2)


Blur

Blur tokens have a type (layer or background), and a size (px).

Example

Name (key)

Value

blur-background-dark

Layer blur, 8px


Radius

A radius token is used to define a radius in your design system. The value of a radius token must be a number.

Example

Name (key)

Value (px)

tile-corner-lg

10


Measure

Measure tokens are used to define a measurement to be included in your design system. They have no set format (other than a numeric value) and can be used to specify for spacing, size, animation times, etc.

For example, a developer could create a measure token to define a specific animation transition time.

Example

Name (key)

Value (ms)

duration-500

250


 

String

String tokens are used for UI labels or can be assigned to component properties.

Example

Name (key)

Value

name-input-label

Full name


Other

Other tokens, or "generic tokens" are a custom type of token whose value might be used in code by developers, but does not directly translate into a design editor style attribute, and differs from the rest of the pre-defined token types.

It is a semantically named string that can be used for any purpose, but is primarily meant to be used programmatically. These tokens are created manually with Supernova, and are not imported from your design editor (i.e a Figma file). For example, the value of a generic token could be a snippet of JSON or CSS, or any other value you want to assign.

Example

Name (key)

Value

animation-timing-function

cubic-bezier(0.1, -0.6, 0.2, 0)

These generic tokens differ from string tokens, which should be used for UI labels or can be assigned to component properties.