@maggioli-design-system/design-tokens v13.7.1
@maggioli-design-system/design-tokens
Generates design tokens for colors and other type of agnostic tokens targeted on specific plaforms, like web, Dart, Android or iOS formats.
This library is based on Adobe Leonardo and Amazon Style Dictionary.
Installation
Install the component via npm by running the following command:
npm i @maggioli-design-system/design-tokensThis package works also with yarn:
yarn add @maggioli-design-system/design-tokensGenerate Custom Palette
you can generate custom palettes via cli command, it takes a configuration file to create palettes
Usage
npx magma-design-tokensOptions
| Option | Alias | Description |
|---|---|---|
--config [configFile] | -c | Path to configuration file if not respect default naming |
--outDir [dirPath] | -d | Path destination for generated palettes |
--generate [platform] | -g | Output format for palette, choose one or more between css, tailwind, dart |
--export-tokens | -t | export palette as JSON design tokens format |
--outTokensDir [tokensDir] | Directory path for JSON tokens, required if --export-tokens is presents |
Configuration file
You can include configuration in a configuration file or a field in package.json named magma-design-tokens
Naming convention
Naming standard for configuration file:
.magma-design-tokensrc.json.magma-design-tokensrc.js.magma-design-tokensrc.cjs.magma-design-tokensrc.mjs.config/magma-design-tokensrc.config/magma-design-tokensrc.json.config/magma-design-tokensrc.js.config/magma-design-tokensrc.cjs.config/magma-design-tokensrc.mjsmagma-design-tokens.config.jsmagma-design-tokens.config.cjs- .
magma-design-tokens.config.mjs
If you change configuration file name you need to set with --config option
Configuration
Basic config
{
"colors": [
{ "color": "#94a3b8", "name": "tone.slate" },
{ "color": "#EA3464", "name": "label.amaranth" }
]
}You can export different color in different output file defining export field
{
"colors": [
{ "color": "#94a3b8", "name": "tone.slate", "export": ["tones"] },
{ "color": "#EA3464", "name": "label.amaranth", "export": ["label"] }
]
}You can choose the ratio with which to generate the color scale with ratios field
{
"colors": [
{ "color": "#94a3b8", "name": "tone.slate", "ratios": "tone" },
{ "color": "#EA3464", "name": "label.amaranth", "ratios": "v1" }
]
}NOTE: there are four different ratios as follow value contrast
{
"v1": [
1.05, 1.1, 1.17, 1.24, 1.32, 1.41, 1.51, 1.65, 1.9, 2.25, 2.7, 3.3,
4, 4.8, 5.75, 7, 8.5, 10.3, 12.45, 15
],
"v2": [1.09, 1.22, 1.42, 1.82, 2.57, 3.71, 5.13, 6.71, 8.75, 10.29],
"default": [1.09, 1.22, 1.42, 1.82, 3.29, 5.13, 6.71, 8.45, 10.29, 17.22],
"tone": [1.05, 1.1, 1.24, 1.47, 2.54, 4.83, 7.56, 10.31, 14.68, 16]
}Cli example
- takes
./color.jsas configuration file
npx design-tokens --config ./color.js- export palette only on css format
npx design-tokens --generate css- export palette on css and tailwind format
npx design-tokens --generate 'css, tailwind'5 months ago
8 months ago
11 months ago
8 months ago
8 months ago
11 months ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago