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
In Search of the Single Source of Truth
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
jina
May 29, 2014
Technology
450
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.8k
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
1.1k
Sass Basics #1
jina
4
430
Other Decks in Technology
See All in Technology
インバスケット試験対策アプリを 作って見えたAIエージェント構築 ナレッジ2選
shichijoyuhi
1
110
大阪オフィスに Unitree Go2 がやってきたので Physical AI やってみた
dafujii
0
260
認知負荷を吸収し、プロダクトをまたぐPR Preview基盤の設計事例
taiki45
2
580
Deep Data Security 機能解説
oracle4engineer
PRO
2
650
1人アドミンな私はAWSアカウント申請をSlackで完結したい!
ysuzuki
0
110
LLM機能を自作して分かるSnowflake Cortex AIの強み
nayuts
0
240
AI 時代の Azure エンジニアリング ~ 私たちは何を磨き、何を任せるのか ~
chack411
1
400
2026-09-26 Platform Engineering Kaigi 2026 インフラとアプリの境界線と委譲の設計 / Drawing the Infra and App Line
masasuzu
0
620
[2026 Oracle Technical Deep Dive] AI時代のアプリケーションを支えるCloud NativeとJava EEモダナイゼーション (2026年9月17日開催)
oracle4engineer
PRO
0
110
OpenSharing について熱く語る〜AI アセットの共有について〜
kameitomohiro
0
180
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
leveragestech
PRO
0
140
オブザーバビリティを高める AI エージェント体験を考える / Designing AI Agent Experiences That Enhance Observability
aoto
PRO
2
260
Featured
See All Featured
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.7k
Into the Great Unknown - MozCon
thekraken
41
2.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Faster Mobile Websites
deanohume
310
32k
Documentation Writing (for coders)
carmenintech
77
5.6k
So, you think you're a good person
axbom
PRO
2
2.2k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
200
Typedesign – Prime Four
hannesfritz
42
3.2k
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
490
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
390
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
300
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