Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Cosmos
Andres Galante
November 13, 2018
0
33
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
150
Make Something Great: Become an Open Source Contributor
andresgalante
0
83
How to use CSS to make your App look amazing and be accessible on any device
andresgalante
0
32
Open source - JUG BA
andresgalante
0
20
Open source - QCon19
andresgalante
0
66
CSS - Media queries o tamanho não importa
andresgalante
0
21
PatternFly 4 variable system
andresgalante
0
49
Open source
andresgalante
3
65
Media Queries - CSS Conf Argentina
andresgalante
3
370
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
56
6.4k
Testing 201, or: Great Expectations
jmmastey
21
5.4k
How New CSS Is Changing Everything About Graphic Design on the Web
jensimmons
213
11k
Rails Girls Zürich Keynote
gr2m
86
12k
Fireside Chat
paigeccino
12
1.3k
What’s in a name? Adding method to the madness
productmarketing
11
1.6k
Typedesign – Prime Four
hannesfritz
34
1.4k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
105
16k
The Art of Programming - Codeland 2020
erikaheidi
32
11k
Support Driven Design
roundedbygravity
86
8.5k
Done Done
chrislema
174
14k
How to train your dragon (web standard)
notwaldorf
58
3.9k
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!