Design Systems for Developers
Design Systems for Developers
Learn how to code design systems that scale
About the Book
Confidently Develop a Company-Wide Design System At Scale
Developing a design system demands more than a UI component library and Storybook.
As a developer working on a design system, you're responsible for extracting design specifications from design files and translating them into code. If that code cannot scale across all the applications that are consuming the design system, or that will consume the design system in the future, the company suffers.
You can easily get stuck building very narrow tools, like a React component library without a firm foundation. Because a React component library is great, but it can be costly if you do it too soon. At any company, applications can vary by platform (i.e. web) and technology (i.e. React). If all you have is a React component library, as soon as you introduce an application with a different technology (i.e. Vue), then you have to find a way to share the design specifications between the React component library and the Vue component library. So, you might create a CSS-in-JS library that can encapsulate the design specifications and be consumed by the React and Vue component libraries respectively.
But, what happens when a request arises for an encapsulation of the design specifications in a way that would work for a plain HTML site? Well, you could move the encapsulation of the design specifications from a CSS-in-JS library to a plain CSS file. However, that limits the React and Vue developers from using their preferred technologies, and that breaks down when a non-web application is introduced (i.e. an Android mobile app). Usually what happens is that the React and Vue developers would carry along with a CSS-in-JS library and the plain HTML developers carry along with a plain CSS file. The issue is that you have your design specifications represented in code in multiple places. You can no longer know which one is the "source of truth." You generate an increased risk that the various applications in a company are out of sync with the official design system and with each other.
At the end of the day, you need to represent your design specifications in code in a single place. From that single "source of truth," you can then generate the platform deliverables (i.e. CSS variables, JS modules, etc.) What you don't want to do is to create platform deliverables without a single source of truth, without a mechanism to keep all the consumers of those deliverables in sync with the design system and one another.
It turns out that many companies have been looking into these problems including Shopify, Adobe, Discovery Education, Morningstar, Orbit, Salesforce, Bloomberg, and more.
The solution is creating design tokens and managing a style dictionary.
Design Systems for Developers is a deep dive into the need for design tokens, an explanation of them, and practical solutions for using them to launch design system tools into production.
Moreover, I emphasize the fact that tools and automation are only useful if good communication is happening between designers and developers in the first place.
In this book, you'll not only learn the technical skills that go into building design system tools for production, but also the soft skills required for collaboration between designers and developers.
Whether you're a designer or a developer, this book is for you.
I trust that after reading this book, developers will be able to work on a design system for any company, regardless of the number of applications and the platform and technologies that those applications are geared for.
I also trust that designers will have a better understanding of their role in collaborating with developers to create a robust design system.
In this book, we'll outline the problems associated with creating tools, like a React UI component library, to encapsulate the styles of a design system, such as the inflexibility of scaling when new applications arise targeting a different platform and tech stack.
From there, we go over how these problems may be solved by creating design tokens, representations of design specifications in code, and style dictionaries, a central management system for storing design tokens and transforming them into platform deliverables.
We'll write some code, discuss different approaches, and cover the very practical details, like how to schedule meetings to collaborate with designers.
Table of Contents
- 1 - The Mission
- 2 - The Problem
- 3 - Introducing Design Tokens
- 4 - Introducing Style Dictionaries
- 5 - Extracting Design Tokens
- 6 - Naming Design Tokens
- 7 - Valuing Design Tokens
- 8 - Storing and Transforming Design Tokens
- 9 - Delivering Design Tokens
- 10 - Creating Tools and Assets From Design Tokens
- 11 - Ideas for Real-World Collaboration
- 12 - The Conclusion
Free cheatsheet from the book: https://cheatsheet-maker.herokuapp.com/sheet/607d7e5f0d3f830015eb9d87
Packages
The Book
PDF
EPUB
WEB
English
The Book + Discord Server
Includes:
Discord Server Invite Link
Invite link to the book's Discord Server
PDF
EPUB
WEB
English
The Book + Discord Server + 45 Minute Video Call
In addition to the book and an invite link to a Discord Server, you will also get an invite link to schedule a 45-minute video call with the author. You can use this time to discuss anything related to the Design System for Developers book, get to know the author, and ask any professional questions.
Includes:
Discord Server Invite Link
Invite link to the book's Discord Server
45 Video Call Invite Link
This provides a link for scheduling a 45-minute video call with the author.
PDF
EPUB
WEB
English
Table of Contents
- 1 - The Mission
- 2 - The Problem
- 3 - Introducing Design Tokens
- 4 - Introducing Style Dictionaries
- 5 - Extracting Design Tokens
- 7 - Valuing Design Tokens
- 6 - Naming Design Tokens
- 8 - Storing and Transforming Design Tokens
- 9 - Delivering Design Tokens
- 10 - Creating Tools and Assets From Design Tokens
- 11 - Ideas for Real-World Collaboration
- 12 - The Conclusion
The Leanpub 60 Day 100% Happiness Guarantee
Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.
You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!
So, there's no reason not to click the Add to Cart button, is there?
See full terms...
Earn $8 on a $10 Purchase, and $16 on a $20 Purchase
We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earnedover $14 millionwriting, publishing and selling on Leanpub.
Learn more about writing on Leanpub
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.
Learn more about Leanpub's ebook formats and where to read them