SlideShare a Scribd company logo
1 of 48
Download to read offline
How to build Design System ?
2017
How to build Design System ?
Atomic design
Brad Frost’s Atomic Design methodology, 2013
http://atomicdesign.bradfrost.com/
ATOM
MOLECULES
ORGANISMS
TEMPLATES
PAGE
Components
Design System
A design system is a collection of documentation on principles and best practices,
that helps guide a team to build digital products.
They are often embodied in UI libraries and pattern libraries, but can extend to include
guides on other areas such as 'Voice and Tone'.
https://github.com/alexpate/awesome-design-systems
Components 

Contains coded patterns and examples.
Voice & Tone
Provides guidance on how language should be used.
(Identify, Look and feel, Tone and voice)
Designers Kit
Includes a Sketch/Photoshop/Figma/etc. file for designers.
https://material.io/guidelines
Material Design
https://atlassian.design
Atlassian Design
Components
These React components will help you
build Atlassian cloud applications
and add-ons.
Agile experience
Reusable components speed up features and deliverables.
Product is adaptable and maintainable.
Building Design System
Design System
helps bridge the gap between
designers and engineers
working on design systems at
scale
https://airbnb.design/painting-with-code/
디자인 시스템은 디자이너뿐 만이 아니라, 개발자와의 협업과 디자인 기반의 기획&설계 등에도 활용 될 수 있다.
협업을 위한 좀더 이상적인 디자인 시스템을 구축하는 방법들이 연구 되고 있으며, airbnb 의 react-sketchapp 이 그 중 하나이다.
Generate code from design
Style
Code
Design Product>>
Design
Style
Code
Product>>
Generate Design from code
Style
Code
Product>>
Sketch
Design once. Reuse anywhere. Update easily. 
With Symbols, Sketch takes the pain out of working with repeated design elements — from icons to avatars.
https://www.sketchapp.com
Product>>
react-sketchapp
an open-source library that allows you to write React components that render to Sketch documents.
(tailor-made for design systems)
https://github.com/airbnb/react-sketchapp
Seamless integration with real data
Layout with flexbox
Automatic internationalization
Source of Truth !
Many hard problems are best
solved when they are
addressed backward. Charlie Munger,
Vice-Chairman of Berkshire Hathaway
수많은 어려운 문제들은 정 반대로 생각할 때 풀리기도 한다.
지금까지는 디자인 도구에서 코드를 생성해 개발자가 사용할 수 있기를 바래왔지만, 이 문제를 반대로 해결한 것이다.
https://stateofjs.com/2017/front-end/results/
React is still the dominant player.
Vue is making big gains on the back of Angular's diminishing popularity.
The React Component composes the screen with a combination of parts having
props (propagation) and state (state).
react-sketchapp - API Reference
http://airbnb.io/react-sketchapp/docs/API.html
.
├── README.md
├── package.json
└── src
├── manifest.json
└── my-command.js
skpm - Sketch Plugin Manager
A utility to build and publish sketch plugins
https://github.com/skpm/skpm
.
├── README.md
├── package.json
└── src
├── manifest.json
└── my-command.js
.
├── README.md
├── package.json
└── src
├── manifest.json
└── my-command.js
.
├── README.md
├── package.json
├── basic-hello.sketchplugin
└── src
├── manifest.json
└── my-command.js
Style guide page. Screen page.
https://github.com/NewsPlatform/HackerNews-sketch
./src
├── components
│ ├── CommentRow.js
│ ├── HTMLView.js
│ ├── Header.js
│ ├── Icons.js
│ └── StoryRow.js
├── main.js
├── manifest.json
├── screens
│ ├── CommentScreen.js
│ ├── PageScreen.js
│ └── StoryScreen.js
├── styles
│ └── index.js
└── utils
├── constants.js
└── fetchData.js
./src
├── components
│ ├── CommentRow.js
│ ├── HTMLView.js
│ ├── Header.js
│ ├── Icons.js
│ └── StoryRow.js
├── App.js
├── screens
│ ├── CommentScreen.js
│ ├── PageScreen.js
│ └── StoryScreen.js
├── styles
│ └── index.js
└── utils
├── constants.js
└── fetchData.js
react-sketchapp design system react-native mobile application
스타일이 정의된 코드는 Design System 과 Product 가 동일하도록 해야 한다. 그 외 코드 내용은 다르더라도 큰 구조 자체는 동일하도록 하자.
Who should implement
Design System?
Design System 은 누가 구축해야 하는가? 개발자는 초기에 환경을 구축하고 틀을 잡는다면, 이후 디자이너가 직접 코딩하는 것이 이상적이다.
하지만 현실적으로, 퍼블리셔가 하는 경우 즉시 효과가 보이기도 한다.
Cons.
Learning cost of designers.
Difficult to draw UI intuitively.
코드가 어렵다기보다는 동작하는 환경의 이해가 더 어렵다. 그래서 개발자가 먼저 환경과 구조를 잡아야 할 것이다.
코드를 작성해야 화면을 그릴수 있기때문에 직관적으로 그려나갈 수는 없다. 직관성은 Design System 의 목적이 아닐 수 있다.
SVG !!!!
We’re investing in code as a design tool.
Moving closer to working with assets that
don’t only include layout and design, but also
logic and data. This helps bridge the gap
between engineers and designers, thus
reducing the need for design specs–or
redlines–and the steps between vision and
reality. Alex Schleifer, head of design at Airbnb
코드를 디자인 도구로 사용한다. 단지 레이아웃과 디자인 뿐 아니라 로직과 데이터를 고려한 디자인 자산을 만드는 것이다.
이를 통해 디자이너와 개발자간의 간극을 줄이고, 더불어 디자인 스펙 문서의 의존성을 줄여 이상을 좀더 현실로 다가서게 한다.
Thank you.
John Kim
yohany@gmail.com
https://www.facebook.com/JohnKim0331

More Related Content

Similar to How to build Design System?

반응형 웹 디자인
반응형 웹 디자인반응형 웹 디자인
반응형 웹 디자인준극 김
 
TOAST Meetup2015 - 구름 Cloud IDE (류성태)
TOAST Meetup2015 - 구름 Cloud IDE (류성태)TOAST Meetup2015 - 구름 Cloud IDE (류성태)
TOAST Meetup2015 - 구름 Cloud IDE (류성태)TOAST_NHNent
 
SW 아키텍처 분석방법
SW 아키텍처 분석방법 SW 아키텍처 분석방법
SW 아키텍처 분석방법 YoungSu Son
 
엔터프라이즈 웹애플리케이션 개발 솔루션 Sencha ExtJS
엔터프라이즈 웹애플리케이션 개발 솔루션 Sencha ExtJS엔터프라이즈 웹애플리케이션 개발 솔루션 Sencha ExtJS
엔터프라이즈 웹애플리케이션 개발 솔루션 Sencha ExtJS미래웹기술연구소 (MIRAE WEB)
 
차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"Changhwan Yi
 
[DEVIEW 2017] 14일만에 GitHub 스타 1K 받은 차트 오픈소스 개발기
[DEVIEW 2017] 14일만에 GitHub 스타 1K 받은 차트 오픈소스 개발기[DEVIEW 2017] 14일만에 GitHub 스타 1K 받은 차트 오픈소스 개발기
[DEVIEW 2017] 14일만에 GitHub 스타 1K 받은 차트 오픈소스 개발기Jae Sung Park
 
웹 Front-End 실무 이야기
웹 Front-End 실무 이야기웹 Front-End 실무 이야기
웹 Front-End 실무 이야기JinKwon Lee
 
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)승용 윤
 
Front end dev 2016 & beyond
Front end dev 2016 & beyondFront end dev 2016 & beyond
Front end dev 2016 & beyondJae Sung Park
 
제 5회 D2 CAMPUS FEST O.T - billboard.js 차트오픈소스개발기
제 5회 D2 CAMPUS FEST O.T -  billboard.js 차트오픈소스개발기제 5회 D2 CAMPUS FEST O.T -  billboard.js 차트오픈소스개발기
제 5회 D2 CAMPUS FEST O.T - billboard.js 차트오픈소스개발기NAVER D2
 
토종 개발자가 바라본 실리콘밸리 개발 트랜드
토종 개발자가 바라본 실리콘밸리 개발 트랜드토종 개발자가 바라본 실리콘밸리 개발 트랜드
토종 개발자가 바라본 실리콘밸리 개발 트랜드Justin Park
 
진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)
진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)
진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)우영 주
 
[D2 오픈세미나]4.진보된개발환경 주우영
[D2 오픈세미나]4.진보된개발환경 주우영[D2 오픈세미나]4.진보된개발환경 주우영
[D2 오픈세미나]4.진보된개발환경 주우영NAVER D2
 
DevOps를 가속화하는 플랫폼 엔지니어링
DevOps를 가속화하는 플랫폼 엔지니어링DevOps를 가속화하는 플랫폼 엔지니어링
DevOps를 가속화하는 플랫폼 엔지니어링JeongHun Byeon
 
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...JinKwon Lee
 
Bootstrap에 대해서 정기철
Bootstrap에 대해서 정기철Bootstrap에 대해서 정기철
Bootstrap에 대해서 정기철Kichul Jung
 
대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014
대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014
대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014NDOORS
 
Bootstrap 살펴보기
Bootstrap 살펴보기Bootstrap 살펴보기
Bootstrap 살펴보기영배 현
 

Similar to How to build Design System? (20)

Sencha ExtJS를 활용한 Big Data Platform 개발 사례
Sencha ExtJS를 활용한 Big Data Platform 개발 사례 Sencha ExtJS를 활용한 Big Data Platform 개발 사례
Sencha ExtJS를 활용한 Big Data Platform 개발 사례
 
반응형 웹 디자인
반응형 웹 디자인반응형 웹 디자인
반응형 웹 디자인
 
TOAST Meetup2015 - 구름 Cloud IDE (류성태)
TOAST Meetup2015 - 구름 Cloud IDE (류성태)TOAST Meetup2015 - 구름 Cloud IDE (류성태)
TOAST Meetup2015 - 구름 Cloud IDE (류성태)
 
SW 아키텍처 분석방법
SW 아키텍처 분석방법 SW 아키텍처 분석방법
SW 아키텍처 분석방법
 
엔터프라이즈 웹애플리케이션 개발 솔루션 Sencha ExtJS
엔터프라이즈 웹애플리케이션 개발 솔루션 Sencha ExtJS엔터프라이즈 웹애플리케이션 개발 솔루션 Sencha ExtJS
엔터프라이즈 웹애플리케이션 개발 솔루션 Sencha ExtJS
 
차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"
 
[DEVIEW 2017] 14일만에 GitHub 스타 1K 받은 차트 오픈소스 개발기
[DEVIEW 2017] 14일만에 GitHub 스타 1K 받은 차트 오픈소스 개발기[DEVIEW 2017] 14일만에 GitHub 스타 1K 받은 차트 오픈소스 개발기
[DEVIEW 2017] 14일만에 GitHub 스타 1K 받은 차트 오픈소스 개발기
 
웹 Front-End 실무 이야기
웹 Front-End 실무 이야기웹 Front-End 실무 이야기
웹 Front-End 실무 이야기
 
모바일환경과 개발방향
모바일환경과 개발방향 모바일환경과 개발방향
모바일환경과 개발방향
 
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
 
Front end dev 2016 & beyond
Front end dev 2016 & beyondFront end dev 2016 & beyond
Front end dev 2016 & beyond
 
제 5회 D2 CAMPUS FEST O.T - billboard.js 차트오픈소스개발기
제 5회 D2 CAMPUS FEST O.T -  billboard.js 차트오픈소스개발기제 5회 D2 CAMPUS FEST O.T -  billboard.js 차트오픈소스개발기
제 5회 D2 CAMPUS FEST O.T - billboard.js 차트오픈소스개발기
 
토종 개발자가 바라본 실리콘밸리 개발 트랜드
토종 개발자가 바라본 실리콘밸리 개발 트랜드토종 개발자가 바라본 실리콘밸리 개발 트랜드
토종 개발자가 바라본 실리콘밸리 개발 트랜드
 
진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)
진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)
진보한 개발 환경에서 품질 좋은 코드 생산 (WebStorm)
 
[D2 오픈세미나]4.진보된개발환경 주우영
[D2 오픈세미나]4.진보된개발환경 주우영[D2 오픈세미나]4.진보된개발환경 주우영
[D2 오픈세미나]4.진보된개발환경 주우영
 
DevOps를 가속화하는 플랫폼 엔지니어링
DevOps를 가속화하는 플랫폼 엔지니어링DevOps를 가속화하는 플랫폼 엔지니어링
DevOps를 가속화하는 플랫폼 엔지니어링
 
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
 
Bootstrap에 대해서 정기철
Bootstrap에 대해서 정기철Bootstrap에 대해서 정기철
Bootstrap에 대해서 정기철
 
대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014
대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014
대규모 프로젝트 개발이야기 - 이승헌, 유나이트 코리아 2014
 
Bootstrap 살펴보기
Bootstrap 살펴보기Bootstrap 살펴보기
Bootstrap 살펴보기
 

More from John Kim

Nginx basic configurations
Nginx basic configurationsNginx basic configurations
Nginx basic configurationsJohn Kim
 
Play node conference
Play node conferencePlay node conference
Play node conferenceJohn Kim
 
플랫폼이란 무엇인가 (IoT Platform)
플랫폼이란 무엇인가 (IoT Platform)플랫폼이란 무엇인가 (IoT Platform)
플랫폼이란 무엇인가 (IoT Platform)John Kim
 
채팅서버의 부하 분산 사례
채팅서버의 부하 분산 사례채팅서버의 부하 분산 사례
채팅서버의 부하 분산 사례John Kim
 
2015 AWS IoT HACK DAY
2015 AWS IoT HACK DAY2015 AWS IoT HACK DAY
2015 AWS IoT HACK DAYJohn Kim
 
실시간 서비스 플랫폼 개발 사례
실시간 서비스 플랫폼 개발 사례실시간 서비스 플랫폼 개발 사례
실시간 서비스 플랫폼 개발 사례John Kim
 
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례  그리고, real-time 어플리케이션 개발하기NODE.JS 글로벌 기업 적용 사례  그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기John Kim
 
vert.x 소개 및 개발 실습
vert.x 소개 및 개발 실습vert.x 소개 및 개발 실습
vert.x 소개 및 개발 실습John Kim
 
vert.x 를 활용한 분산서버 개발하기
vert.x 를 활용한 분산서버 개발하기vert.x 를 활용한 분산서버 개발하기
vert.x 를 활용한 분산서버 개발하기John Kim
 
DEVIEW - 오픈소스를 활용한 분산아키텍처 구현기술
DEVIEW - 오픈소스를 활용한 분산아키텍처 구현기술DEVIEW - 오픈소스를 활용한 분산아키텍처 구현기술
DEVIEW - 오픈소스를 활용한 분산아키텍처 구현기술John Kim
 

More from John Kim (10)

Nginx basic configurations
Nginx basic configurationsNginx basic configurations
Nginx basic configurations
 
Play node conference
Play node conferencePlay node conference
Play node conference
 
플랫폼이란 무엇인가 (IoT Platform)
플랫폼이란 무엇인가 (IoT Platform)플랫폼이란 무엇인가 (IoT Platform)
플랫폼이란 무엇인가 (IoT Platform)
 
채팅서버의 부하 분산 사례
채팅서버의 부하 분산 사례채팅서버의 부하 분산 사례
채팅서버의 부하 분산 사례
 
2015 AWS IoT HACK DAY
2015 AWS IoT HACK DAY2015 AWS IoT HACK DAY
2015 AWS IoT HACK DAY
 
실시간 서비스 플랫폼 개발 사례
실시간 서비스 플랫폼 개발 사례실시간 서비스 플랫폼 개발 사례
실시간 서비스 플랫폼 개발 사례
 
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례  그리고, real-time 어플리케이션 개발하기NODE.JS 글로벌 기업 적용 사례  그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
 
vert.x 소개 및 개발 실습
vert.x 소개 및 개발 실습vert.x 소개 및 개발 실습
vert.x 소개 및 개발 실습
 
vert.x 를 활용한 분산서버 개발하기
vert.x 를 활용한 분산서버 개발하기vert.x 를 활용한 분산서버 개발하기
vert.x 를 활용한 분산서버 개발하기
 
DEVIEW - 오픈소스를 활용한 분산아키텍처 구현기술
DEVIEW - 오픈소스를 활용한 분산아키텍처 구현기술DEVIEW - 오픈소스를 활용한 분산아키텍처 구현기술
DEVIEW - 오픈소스를 활용한 분산아키텍처 구현기술
 

How to build Design System?

  • 1. How to build Design System ? 2017
  • 2. How to build Design System ?
  • 3.
  • 4.
  • 5.
  • 6.
  • 7. Atomic design Brad Frost’s Atomic Design methodology, 2013 http://atomicdesign.bradfrost.com/
  • 12. PAGE
  • 15. A design system is a collection of documentation on principles and best practices, that helps guide a team to build digital products. They are often embodied in UI libraries and pattern libraries, but can extend to include guides on other areas such as 'Voice and Tone'. https://github.com/alexpate/awesome-design-systems
  • 16. Components 
 Contains coded patterns and examples. Voice & Tone Provides guidance on how language should be used. (Identify, Look and feel, Tone and voice) Designers Kit Includes a Sketch/Photoshop/Figma/etc. file for designers.
  • 19. Components These React components will help you build Atlassian cloud applications and add-ons.
  • 20. Agile experience Reusable components speed up features and deliverables. Product is adaptable and maintainable.
  • 22. Design System helps bridge the gap between designers and engineers working on design systems at scale https://airbnb.design/painting-with-code/ 디자인 시스템은 디자이너뿐 만이 아니라, 개발자와의 협업과 디자인 기반의 기획&설계 등에도 활용 될 수 있다. 협업을 위한 좀더 이상적인 디자인 시스템을 구축하는 방법들이 연구 되고 있으며, airbnb 의 react-sketchapp 이 그 중 하나이다.
  • 23. Generate code from design Style Code Design Product>>
  • 25. Style Code Product>> Sketch Design once. Reuse anywhere. Update easily.  With Symbols, Sketch takes the pain out of working with repeated design elements — from icons to avatars. https://www.sketchapp.com
  • 26. Product>> react-sketchapp an open-source library that allows you to write React components that render to Sketch documents. (tailor-made for design systems) https://github.com/airbnb/react-sketchapp
  • 31. Many hard problems are best solved when they are addressed backward. Charlie Munger, Vice-Chairman of Berkshire Hathaway 수많은 어려운 문제들은 정 반대로 생각할 때 풀리기도 한다. 지금까지는 디자인 도구에서 코드를 생성해 개발자가 사용할 수 있기를 바래왔지만, 이 문제를 반대로 해결한 것이다.
  • 32. https://stateofjs.com/2017/front-end/results/ React is still the dominant player. Vue is making big gains on the back of Angular's diminishing popularity.
  • 33. The React Component composes the screen with a combination of parts having props (propagation) and state (state).
  • 34. react-sketchapp - API Reference http://airbnb.io/react-sketchapp/docs/API.html
  • 35.
  • 36.
  • 37. . ├── README.md ├── package.json └── src ├── manifest.json └── my-command.js skpm - Sketch Plugin Manager A utility to build and publish sketch plugins https://github.com/skpm/skpm
  • 38. . ├── README.md ├── package.json └── src ├── manifest.json └── my-command.js
  • 39. . ├── README.md ├── package.json └── src ├── manifest.json └── my-command.js
  • 40. . ├── README.md ├── package.json ├── basic-hello.sketchplugin └── src ├── manifest.json └── my-command.js
  • 41. Style guide page. Screen page.
  • 43. ./src ├── components │ ├── CommentRow.js │ ├── HTMLView.js │ ├── Header.js │ ├── Icons.js │ └── StoryRow.js ├── main.js ├── manifest.json ├── screens │ ├── CommentScreen.js │ ├── PageScreen.js │ └── StoryScreen.js ├── styles │ └── index.js └── utils ├── constants.js └── fetchData.js ./src ├── components │ ├── CommentRow.js │ ├── HTMLView.js │ ├── Header.js │ ├── Icons.js │ └── StoryRow.js ├── App.js ├── screens │ ├── CommentScreen.js │ ├── PageScreen.js │ └── StoryScreen.js ├── styles │ └── index.js └── utils ├── constants.js └── fetchData.js react-sketchapp design system react-native mobile application 스타일이 정의된 코드는 Design System 과 Product 가 동일하도록 해야 한다. 그 외 코드 내용은 다르더라도 큰 구조 자체는 동일하도록 하자.
  • 44. Who should implement Design System? Design System 은 누가 구축해야 하는가? 개발자는 초기에 환경을 구축하고 틀을 잡는다면, 이후 디자이너가 직접 코딩하는 것이 이상적이다. 하지만 현실적으로, 퍼블리셔가 하는 경우 즉시 효과가 보이기도 한다.
  • 45. Cons. Learning cost of designers. Difficult to draw UI intuitively. 코드가 어렵다기보다는 동작하는 환경의 이해가 더 어렵다. 그래서 개발자가 먼저 환경과 구조를 잡아야 할 것이다. 코드를 작성해야 화면을 그릴수 있기때문에 직관적으로 그려나갈 수는 없다. 직관성은 Design System 의 목적이 아닐 수 있다.
  • 47. We’re investing in code as a design tool. Moving closer to working with assets that don’t only include layout and design, but also logic and data. This helps bridge the gap between engineers and designers, thus reducing the need for design specs–or redlines–and the steps between vision and reality. Alex Schleifer, head of design at Airbnb 코드를 디자인 도구로 사용한다. 단지 레이아웃과 디자인 뿐 아니라 로직과 데이터를 고려한 디자인 자산을 만드는 것이다. 이를 통해 디자이너와 개발자간의 간극을 줄이고, 더불어 디자인 스펙 문서의 의존성을 줄여 이상을 좀더 현실로 다가서게 한다.