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
Cosmos
Search
Andres Galante
November 13, 2018
0
110
Cosmos
Andres Galante
November 13, 2018
Tweet
Share
More Decks by Andres Galante
See All by Andres Galante
Make Something Great! Become an Open Source Contributor
andresgalante
0
210
Make Something Great: Become an Open Source Contributor
andresgalante
0
290
How to use CSS to make your App look amazing and be accessible on any device
andresgalante
0
72
Open source - JUG BA
andresgalante
0
77
Open source - QCon19
andresgalante
0
110
CSS - Media queries o tamanho não importa
andresgalante
0
86
PatternFly 4 variable system
andresgalante
0
110
Open source
andresgalante
3
90
Media Queries - CSS Conf Argentina
andresgalante
3
440
Featured
See All Featured
Everyday Curiosity
cassininazir
0
130
How to train your dragon (web standard)
notwaldorf
97
6.5k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
160
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
120
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
Writing Fast Ruby
sferik
630
62k
A designer walks into a library…
pauljervisheath
210
24k
ラッコキーワード サービス紹介資料
rakko
1
2.3M
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
160
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
76
Balancing Empowerment & Direction
lara
5
890
Transcript
None
None
“Zala es la persona mas feliz del mundo” Anónimo (fué
Guille)
None
I DON’T KNOW WHO YOU ARE, BUT IF YOU SLOW
US DOWN, I WILL FIND YOU AND HURT YOU
None
None
WHY? 1
Rules make the system, they make it maintainable and scalable.
Without them there is no system, it’s a collection of random components. 1 WHY?
CSS is like a bear cub. Cute and inoffensive but
as he grows, he'll eat you alive. 1 WHY?
DESIGN COSMOS DEV 1 WHY?
Time Progress 1 WHY? Change Change Change
Time Progress 1 WHY?
1 WHY? Responsive & Accesible Requirements
-Eric Meyer “The Web is the most hostile environment to
developer assumptions imaginable.” Responsive
None
Accesible
2,87% Internet Explorer 15,6% People with disabilities (older than 15
years) Source: statcounter Source: WHO 1 WHY?
None
The web is accessible by default! If our app is
not accessible, it’s our fault. 1 WHY? outline: none;
None
None
None
HOW? 2
SYSTEM 2 HOW?
MAINTAINABILITY Isolation and Modularity 2 HOW?
Let each thing be a thing 2 HOW?
Components & Layouts Separation of concerns 2 HOW?
Layouts Layouts are the containers that allow for organizing and
grouping its immediate children on the page. GalleryLayout or StackLayout 2 HOW?
Components Components are modular and independent structures concerned with how
a thing looks. Box, Button, PageHeader 2 HOW?
B.E and prop Box.Header Box.Body Box.Footer 2 HOW?
UI Structures Components Layouts 2 HOW?
Components Layouts " 2 HOW?
Components Layouts # 2 HOW?
DEMO 2 HOW?
Theming Now lets talk about 2 HOW?
Tokens Global vs Component tokens https://css-tricks.com/theming-with-variables-globals-and-locals/ 2 HOW?
Global and component variables, when combined, can be super powerful,
make CSS more maintainable, and even collaborative. Geoff Graham 2 HOW?
BUMPERS! 2 HOW?
Global tokens global variables keep consistency across components Global.Concept.Modifier 2
HOW?
Global tokens Global.Concept.Modifier Global.Spacer.Small Global.FontSize.Medium Global.LineHeight.Large 2 HOW?
Typography Borders Breakpoints Colors Spaces Shadows 2 HOW? Global tokens
Component tokens component variables are scoped to theme-able component properties
Block.Element.Prop.CSS-Property 2 HOW?
Component tokens Box.Color Box.Header.PaddingTop Box.Primary.BorderColor Block.Element.Prop.CSS-Property 2 HOW?
Box.PaddingTop Button.PaddingTop Alert.PaddingTop Box.Primary.Color ButtonPrimary.Color Alert.Primary.Color Global.Spacer Global.Color.Primary Global Component
2 HOW?
Global.Color.Primary 2 HOW?
--pf-c-box--PaddingTop --pf-c-button--PaddingTop --pf-c-alert--PaddingTop --pf-global--spacer--md Global Component Box.Primary.Color ButtonPrimary.Color Alert.Primary.Color Global.Color.Primary
2 HOW?
Global.Color.Primary Alert.Primary.Color 2 HOW?
--pf-c-box--PaddingTop --pf-c-button--PaddingTop --pf-c-alert--PaddingTop --pf-global--spacer--md Global Component Box.Primary.Color ButtonPrimary.Color Alert.Primary.Color Global.Color.Primary
2 HOW?
DEMO 2 HOW?
LIQUID CAT Responsive Accessible Documented 2 HOW?
Quality Time Accessibility Responsive Documented 2 HOW?
Quality Time Accessibility Responsive Documented 2 HOW?
None
OUTCOME 3
SYSTEMS ARE BUILT TO CHANGE 1
Time Progress 3 OUTCOME
A good design system empowers designers to code, and developers
to design. Thanks Diana Mounter for this slide
DESIGN COSMOS DEV 3 OUTCOME
IMPROVES CONSISTENCY 2
https://www.nngroup.com/articles/top-10-mistakes-web-design/ “...when things always behave the same, users don't have
to worry about what will happen. Instead, they know what will happen based on earlier experiences” Jakob Nielsen 3 OUTCOME
IMPROVES DEVELOPMENTS EXPERIENCE 3
Easier to implement Don’t make me think 3 OUTCOME
IMPROVES MAINTAINABILITY 4
MAINTAINABILITY Isolation and Modularity 3 OUTCOME
None
SO… WHAT’S THE PLAN? 4
4 THE PLAN
4 THE PLAN Organize the system implementing rules, without been
a blocker. Goal
Add layouts Add opt-in margins 4 THE PLAN Step #1
4 THE PLAN Fix components Remove margins Step #2
4 THE PLAN Recurring meeting? IE11? BrowserStack? Next steps
Thanks!