datacom-design-tokens

0.0.2Β β€’Β PublicΒ β€’Β Published

Datacom Design Tokens

Getting Started πŸš€

This contains the all the style tokens for the Datacom brand. The tokens can be built for 3 different platforms at the moment - web, android and ios. The tokens are stored as JSON files under src/. The brand colors are under src/color and applies to all platforms. However things like fonts and typography can be specific to platforms and for web these can be found in src/web-platform. To create new tokens specific to ios or android please create src/ios-platform or src/android-platform.

Warning ⚠

Please be careful when changing tokens shared between platforms as other projects and teams at Datacom might be using these.

Making Changes ✏

To make changes go into the JSON files inside src/. The JSON files are built using Amazon Style Dictionary, go to their site for more information on syntax and functionality.

If the file format you need is not being built at the moment you can edit the build.js file to add the format. For more information on this and which format is supported head to Amazon Style Dictionary or this Medium article or the bottom of this page.

To build the styles you can run:

npm i
npm run build

You should see something like this output:

Build started...

==============================================

Processing: [web]

css
βœ”οΈŽ  build/css/_variables.css

less
βœ”οΈŽ  build/less/_variables.less

scss
βœ”οΈŽ  build/scss/_variables.scss

End processing

==============================================

Processing: [ios]

ios
βœ”οΈŽ  build/ios/StyleDictionaryColor.h
βœ”οΈŽ  build/ios/StyleDictionaryColor.m

ios-swift
βœ”οΈŽ  build/ios-swift/StyleDictionary.swift

ios-swift-separate-enums
βœ”οΈŽ  build/ios-swift/StyleDictionaryColor.swift

End processing

==============================================

Processing: [android]

android
βœ”οΈŽ  build/android/colors.xml

End processing

==============================================

Pat yourself on the back, you have now built your first style dictionary! Moving on, take a look at what we have built. This should have created a build directory and it should look similar to this:

β”œβ”€β”€ README.md
β”œβ”€β”€ build.js
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ color/
β”‚       β”œβ”€β”€ color.json
β”‚       β”œβ”€β”€ font.json
β”‚   β”œβ”€β”€ web-platform/   
β”œβ”€β”€ build/
β”‚   β”œβ”€β”€ android/
β”‚      β”œβ”€β”€ colors.xml
β”‚   β”œβ”€β”€ scss/
β”‚      β”œβ”€β”€ _variables.scss
β”‚   β”œβ”€β”€ ios/
β”‚      β”œβ”€β”€ StyleDictionaryColor.h
β”‚      β”œβ”€β”€ StyleDictionaryColor.m
β”‚   β”œβ”€β”€ ios-swift/
β”‚      β”œβ”€β”€ StyleDictionary.swift
β”‚      β”œβ”€β”€ StyleDictionaryColor.swift

Building for Other Platforms πŸ€–

If you open build.js you will see there are 3 platforms defined: web (scss, less, css), android, ios. Each platform has a transformGroup, buildPath, and files. The buildPath and files of the platform should match up to the files what were built.

Pretty nifty! This shows a few things happening:

  1. The build system does a deep merge of all the property JSON files defined in the source attribute of config.json. This allows you to split up the property JSON files however you want. There are 2 JSON files with color as the top level key, but they get merged properly.
  2. The build system resolves references to other style properties. {size.font.medium.value} gets resolved properly.
  3. The build system handles references to property values in other files as well as you can see in properties/color/font.json.

Huzzah! πŸŽ‰

Now go forth and create! Take a look at all the built-in transforms and formats.

Useful Links

Google Font Montserrat - https://fonts.google.com/specimen/Montserrat

Readme

Keywords

Package Sidebar

Install

npm i datacom-design-tokens

Weekly Downloads

1

Version

0.0.2

License

ISC

Unpacked Size

36.7 kB

Total Files

11

Last publish

Collaborators

  • datacom-tokens