Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Design Systems with React
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Tony Ward
May 21, 2019
Programming
240
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Design Systems with React
I talk at a local meetup about design systems and their advantages
Tony Ward
May 21, 2019
More Decks by Tony Ward
See All by Tony Ward
EmberConf2018: Toyota's Shared Component Library
ynotdraw
0
880
Other Decks in Programming
See All in Programming
Jetpack Compose メカニズム
skydoves
0
470
AWS DevOps Agentで インシデント対応をAIに任せたい
honmarkhunt
7
3.1k
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
3
370
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
240
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
1
520
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
510
世界の中心で、AI(App Intents)をさけぶ ー App Intents中心設計の実践ガイド
touyou
0
660
速習iPhone Duo対応
yuukiw00w
2
720
Are APIs Still Relevant in the AI Era?
soyuka
0
310
Ghostty + Neovimで作る 透明でカッコ良い開発環境
j341nono
0
120
テストを司るデーモンに会いに行く 〜隔離した仮想マシンでテストを通すまで〜
h1d3mun3
1
570
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
130
Featured
See All Featured
Un-Boring Meetings
codingconduct
0
430
Marketing to machines
jonoalderson
1
5.8k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
Darren the Foodie - Storyboard
khoart
PRO
4
3.9k
WENDY [Excerpt]
tessaabrams
14
39k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.3k
Building Applications with DynamoDB
mza
96
7.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Into the Great Unknown - MozCon
thekraken
41
2.7k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
510
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
610
Transcript
Design Systems with React YnotDraw @_ynotdraw Tony Ward | Software
Engineer @ LifeOmic
Design Language + Shared Components + Documentation = Design System
Design Language
Designer creates the “design language” for your app
Create the voice of your product
Design Elements A defined set of options for: • Typography
sizes and weights • Buttons • Colors • …
Typically these items have a limited set of options
None
None
None
None
Design Tools Tools such as Sketch and Figma allow designers
to create these components, similar to components we have in React
Typically the primitive design elements are composed together to create
other components
Notification is composed of Typography and color palette
Mockups for a feature/product are created by composing these components
together
Design Language ✅ + Shared Components + Documentation = Design
System
Shared Components
Component Examples Primitive components every time you go to build
an app? • Typography sizes and weights • Buttons • Colors • Inputs • …
Your designer probably already created these as part of their
design language
Go build them with React!
Advantage: Agility Now you have a bucket of components to
build out features quickly!
Separate Apps Do you have separate apps under the same
product, that need to look and feel as though they are the same app? (Now made easier with the primitive components! Each app just imports the package.)
Maybe you want to go one step deeper…
Don’t Reinvent the Wheel Share components, utilities, etc. across product
lines
Your app becomes pages composed of many shared, consistent, and
familiar components
Similar to designers, building out a new feature is just
composing existing components together
Goal: Have enough components to build a new feature (Even
better goal: have enough components to build a new product)
So you and your designer built a bunch of components,
how do people learn about them?
Design Language ✅ + Shared Components ✅ + Documentation =
Design System
Documentation
Documentation Tools • Storybook (quick win) • Styleguidist • Mdx-docs
• Custom docs app
Documentation • How to’s: • Import • Use • Props
available • Use cases for components • When to use A vs B • Designers may do well at writing these sections
Design Language ✅ + Shared Components ✅ + Documentation ✅
= Design System
Advantages • Faster feature/product building • UI/UX consistencies and patterns
• Shared components with design • Shared “language” with design
Advantages • Great for onboarding new devs • Well-tested components
working across all browsers
How to Get Started • Build your own from scratch
• Build on top of MUI • Has a ton of components out of the box that are very sane • Can override styles to get going quickly
Out in the Wild • https://github.com/alexpate/awesome-design-systems • Atlas Kit •
Duolingo • GitHub Primer • Audi UI Kit
Design Resource
YnotDraw @_ynotdraw Thanks!