Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
In Search of the Single Source of Truth
Search
jina
May 29, 2014
Technology
440
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
In Search of the Single Source of Truth
Talk given at DevConFu.
jina
May 29, 2014
More Decks by jina
See All by jina
Design Systems are for People
jina
1
1k
Design Tokens in Design Systems
jina
9
29k
Designing a Design System
jina
34
7.7k
Living Design Systems
jina
42
2.5M
Lightning Design System
jina
6
710
Sass & Style Guides
jina
11
530
Designing for Enterprise
jina
4
260
Refactoring Web Interfaces
jina
20
1k
Sass Basics #1
jina
4
420
Other Decks in Technology
See All in Technology
サービス内で複数のOP・ASを連鎖させる(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
350
[ホンマでっか SRE] あなたはなぜ SRE に?
_awache
0
370
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.3k
『自分で判断できるか』を基準に、プロダクトのハンズオン研修でAI利用の線を引いてみた / Where We Drew the Line on AI in Hands-on Training
honyanya
1
450
「ミスを許さない手順書」を作ってみた 〜 個人的にはこれ以上できることはあまりなさそう/20260827-ssmjp-operation-procedure-update
opelab
14
9.9k
[RSJ26] Flow as Flow: Modeling Robot Velocity Fields as Probability Velocity Fields
keio_smilab
PRO
0
120
dbt in Microsoft Fabric
ryomaru0825
0
300
OAuth SPIFFE Client Authentication(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
350
500名弱規模の組織のPythonプロジェクト(dbt) をどう管理するか?
hiracky16
0
360
本番に近いテストをもっと手軽に - Postmanで広がるAPIテストの世界 / Expanding the World of API Testing with Postman
yokawasa
1
130
Data Hubグループ 紹介資料
sansan33
PRO
0
3.2k
全社に広がるMCPサーバーを、 どう安全に管理するか MCPass開発の舞台裏
mtpooh
3
180
Featured
See All Featured
Tell your own story through comics
letsgokoyo
1
1k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
BBQ
matthewcrist
89
10k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
670
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
490
Discover your Explorer Soul
emna__ayadi
2
1.3k
Balancing Empowerment & Direction
lara
6
1.3k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
How to make the Groovebox
asonas
2
2.4k
Transcript
In Search of the Single Source of Truth @JINA //
DEVCONFU // JŪRMALA // 2014
@jina
Senior Product Designer
— NATE FORTIN “A fractured process makes for a fractured
user experience.”
Style Guides are all the rage …AND THEY HAVE COME
A LONG WAY.
2004 // PDF Style Guide
PDFs are a pain to maintain. HEY, THAT RHYMES.
2007–2008 // Wordpress Style Guide
alistapart.com/article/writingainterfacestyleguide
Design & Brand Standards Front-end Development Standards Keeping Style Guides
Current & Useful
Wordpress was only slightly easier. …AND NOBODY EXCEPT ME WOULD
UPDATE IT.
2010–2011 // Living Style Guide with Sass
None
Engine Yard App Cloud Style Guide, Early 2011
ZOMG!
Engine Yard App Cloud Style Guide, Early 2011
Sass & Style Guides are awesome together!
blog.engineyard.com/2011/front-end-maintainability-with-sass-and-style-guides
Make Documentation a regular part of your work ow. 01
//
Don’t try to document everything at once. YOU’LL LIKELY GIVE
UP.
Document going forward.
Making something new? Document it.
Revising something? Refactor it. Then document it.
During design & code reviews, make sure decisions are documented.
2012–2013 // Living Style Guide with Sass for Web App
& Site Github Wiki for iOS & Android
Do CSS Style Guide, Late 2013
Do Responsive Layout Guide, Early 2013
For mobile, changes to colors & sizes were a nightmare
to update. PHOTOSHOP ⟶"DROPBOX ⟶"WIKI ⟶"☹
Document your ideal CSS Architecture. 02 //
vendor/ dependencies/ base/ components/ regions/ helpers/ responsive/ tools/ } my
ideal css architecture
Make a UI Library. 03 //
oocss.org
ux.mailchimp.com/patterns
Create pages
Create systems
bradfrostweb.com/blog/post/atomic-web-design
01 // Base HTML elements 02 // Modular components 03
// Page regions 04 // Layout system
Show the object with all of its associated states.
developer.android.com/design
developer.android.com/design/building-blocks/seek-bars
Show the code you want people to use, not the
nal output.
Add development tools for rapid development and testing. 04 //
starbucks.com/static/reference/styleguide
starbucks.com/static/reference/styleguide/layout_promo_e.aspx
starbucks.com/static/reference/styleguide/layout_promo_e.aspx
starbucks.com/static/reference/styleguide/layout_promo_e.aspx
starbucks.com/static/reference/styleguide/layout_promo_e.aspx
starbucks.com/static/reference/styleguide/layout_promo_e.aspx
starbucks.com/static/reference/styleguide/layout_promo_e.aspx
Try a responsive sandbox during development.
Do Responsive Layout Guide, Early 2013
Keep documentation current & useful. 05 //
jacobrask.github.io/styledocco
2013 // Living Style Guide with Sass + ERB &
YAML
sass-lang.com
sass-lang.com/styleguide
github.com/mattkersley/Responsive-Design-Testing
sass-lang.com/styleguide/responsive-test
We open sourced the website. Anyone can contribute to design.
What if a new color gets added? THE STYLE GUIDE
NEEDS TO BE UPDATED, TOO.
Can the CSS & Style Guide both share the same
attributes in one single con guration?
Single Source of Truth
Don’t Repeat Yourself
colors: - name: hopbush hex: "c69" - name: bouquet hex:
"b37399" - name: venus hex: "998099" - name: patina hex: "699" - name: nebula hex: "d2e1dd" - name: white hex: "fff" <% data.color.colors.each do |swatch| %> $<%= swatch.name %>: #<%= swatch.hex %>; <% end %> data/color.yml _color.scss.erb
colors: - name: hopbush hex: "c69" - name: bouquet hex:
"b37399" - name: venus hex: "998099" - name: patina hex: "699" - name: nebula hex: "d2e1dd" - name: white hex: "fff" %ul.swatches - for swatch in data.color.colors %li{class: "swatch-" + swatch.name} %pre %code = "$" + swatch.name %br/ = "#" + swatch.hex data/color.yml _color.haml
Sass Color Style Guide
2014 // Living Style Guide & Prototype with Sass &
Angular as Spec + Living Variables System for All Devices & Platforms
sfdc-styleguide.herokuapp.com
Prototypes Aura (our web framework) Native iOS Native Android Native
Windows
How do we keep our colors, spacing, & sizes consistent?
Theo BY SALESFORCE UX // OPEN SOURCING // COMING VERY
SOON!
Theo: theme tokenizer with JSON input Sass Stylus LESS Aura
plist XML {
sfdc-styleguide.herokuapp.com
@SalesforceUX
dribbble.com/salesforce
sass-lang.com
@TeamSassDesign
dribbble.com/TeamSassDesign
themixinsf.com
susy.oddbird.net
artinmycoffee.com
— GUSTAVE FLAUBERT “Be regular and orderly in your life
so that you may be violent and original in your work.”
T W I T T E R , D R
I B B B L E , I N STAG RA M , & G I T H U B @jina