Design Tokens Package
Paste Design System Tokens package with a number of different formats for Web, Mobile, and Sketch.
yarn add @twilio-paste/design-tokens
The Paste design tokens are available as a NPM package which acts as the central source of truth for Paste. By using this package correctly, you can rely on a well-maintained, up-to-date definition of Twilio's Design Language. A simple way to grab or view the latest files in this package is to visit UNPKG - @twilio-paste/design-tokens.
While the Paste Tokens Package supports the following formats, our roadmap currently prioritizes React Components and Sketch Libraries as primary deliverables of the Design System. Reach out to us at #help-design-system if you'd like to use Paste for another format: we'll help you out as much as we can!
Paste Design Tokens are supported in the following formats within this package:
- CSS custom properties
- Android XML
- iOS JSON
- Typescript definitions
- Sketch Palette
Paste supports multiple themes. This is done by exporting the same token formats for each theme. Each file in the root of the design tokens package is exported for each theme with the corresponding values updated for each token. This allows different parts of Twilio to have their own visual styles whilst still maintaining a consistent Twilio feel, coherent component behavior, and preventing Design System bloat. Here's an example of Themes:
|Default theme||SendGrid theme|
|$color-brand-highlight: #F22F46||$color-brand-highlight: #3368FA|
|$font-size-70: 1.5rem||$font-size-70: 1.75rem|
See our list of Tokens and their corresponding values in the Token List page.
Within themes, we presently have support for:
Give us Feedback on this Page#
As you use Paste, you'll likely encounter things that don't seem right. Please reach out with your feedback! Here's some prompts to consider:
- Is this page easy for me to consume?
- Is the information supporting it sufficient / well-described?
- What information is missing?
- How approachable is the documentation? Can a new engineer / PM / designer at Twilio get started with it easily?
All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
- design-tokens: change color-text-link token values (#172) (f0a215c)
- design-tokens: update lightest console color palette (#174) (98b625c)
- correct button heights add new default icon size (#186) (2e54478)
- design-tokens: update some blues, reds, and focus shadow (#185) (98d70cc)
Note: Version bump only for package @twilio-paste/design-tokens
- icons: delete old icons, add new streamline icons (#129) (571791d)
- typography: heading component (#149) (4e033e6)
icons: removed all the inherited icons since we're moving to a new system
chore(icons): update icon list for storybook
fix(spinner): use new icon
fix(storybook): use new icon for story
fix(story): button icons should be 24px
fix: adjust icon size tokens
feat: add iconSizes as separate key in theme-tokens
feat(icons): icons package to use tokens and update icons
fix(spinner): update to use tokens and new icons
fix(button): use correct spinner size
fix(icons): major icons package fixes
- huge overhaul to build process
- now uses rollup
- builds into cjs and esm directories
- made the package publishable to npm
- moved svg folder out of src, now src only holds react stuff
- updated scripts to use new paths and cleaned up the code
- programmatically generates rollup config from the icon-list command
chore: add new icons dist folders to gitignore
fix: spinner and button icon usage
feat(icons): add rollup icon list cache file
fix(core-bundle): sort packages for consistent builds
esin rollup for correctness
fix(spinner): lint error
chore(icons): move rollup icon list
chore(spinner): use types package in story
fix(spinner): swap out destructured props for explicit props
- design-tokens: fix SendGrid token values (#71) (396fccf)
- design-tokens: typo on word
- tokens: correct the box shadow tokens category and type (#95) (fe0f946)
- design-tokens: resolve path correctly (6f89111)
- tokens: added missing SG token values (#22) (23d7385)
- change @paste scope to @twilio-paste (#2) (1d8d2ff)
- run eslint across the right files and fix any issues that arise. (#21) (2fcc872)
- swap light/dark border token colors (0a99d3c)
- Type-checking fixes (#12) (be02450)