@coveord/plasma-tokens
TypeScript icon, indicating that this package has built-in type declarations

53.1.1 • Public • Published

@coveord/plasma-tokens

Design tokens of the Plasma Design System extracted from Figma.

What is a design token?

Simply put, a design token is a stored design decision. It can be understood as a variable that holds the result of a choice (in this case made in Figma). Decisions can be made about multiple different subjects, for example colors, typography, spacing, etc. Therefore, it is important to consider that design tokens come in as many types as there are design subjects.

Objective of this package

Distribute design tokens to all Coveo products that rely on the Plasma Design System through code.

Installation

npm install @coveord/plasma-tokens

For TypeScript users: the package provides its own type declarations.

Usage

Tokens are provided through multiple outputs. Choose the format that best suits your needs.

TypeScript

import * as PlasmaTokens from '@coveord/plasma-tokens';

PlasmaTokens.color.primary.actionBlue[6]; // '#1372ec'

Sass

@import '~@coveord/plasma-tokens/scss';
// or individual libraries
@import '~@coveord/plasma-tokens/scss/Colors';

.something {
    background-color: $plasma-color-primary-action-blue-6;
}

CSS

First include the css file you want tokens from in your page.

<link href="/node_modules/@coveord/plasma-tokens/css/Colors.css" rel="stylesheet" />

Tokens in CSS are exposed as CSS variables.

.something {
    background-color: var(--plasma-color-primary-action-blue-6);
}

Icons

All icons are located under the icons folder in .svg format.

If you want to use icons in a React application, refer to @coveord/plasma-react-icons.

Internal usage

tokens:fetch

Fetches tokens information from our tokens libraries in Figma and outputs the result in JSON format into the data folder.

In order to fetch data from our Figma libraries on your local machine, you will need to create a .env file for yourself that provides the necessary information for the script to run. The file .env.example will help you know where to get the proper values such as the access token.

--libraries, -l

Optional option. Use to target one or more specific tokens libraries. If not specified, all libraries will be fetched. See the list of available libraries.

example:

tokens:fetch --libraries Lib1 Lib2

tokens:build

Translates the fetched tokens into all the available output formats.

tokens:lint

Runs Prettier on the source files generated by the tokens:build command.

This command is automatically run along with the tokens:build command.

build

Builds from the sources files that were generated by the tokens:build command the code to be distributed on NPM (creates the dist folder).

Available token libraries

Library Name Available Formats Description
Icons svg, typescript xml markup of the svg elements of all the icons and their variants.
Colors typescript, scss, css Values of the different palettes used throughout plasma, also contains gradients.

Readme

Keywords

none

Package Sidebar

Install

npm i @coveord/plasma-tokens

Weekly Downloads

8,001

Version

53.1.1

License

Apache-2.0

Unpacked Size

858 kB

Total Files

1227

Last publish

Collaborators

  • coveoit
  • germainbergeron
  • npmcoveord