atomic design con pattern lab

73
Mauricio Angulo S. Certified Sprintmaster & UX Architect [email protected] @mauricioangulo www.tesseractspace.com Atomic Design con Pattern Lab

Upload: mauricio-angulo-sillas

Post on 13-Apr-2017

424 views

Category:

Internet


0 download

TRANSCRIPT

Page 1: Atomic Design con Pattern Lab

Mauricio Angulo S.Certified Sprintmaster & UX Architect

[email protected]@mauricioangulo

www.tesseractspace.com

Atomic Design conPattern Lab

Page 2: Atomic Design con Pattern Lab

Trabajo en Tesseract Space, una empresa mexicana como consultor en experiencia de usuario y sprintmaster.

Colaboro en el grupo de Google Experts y en la iniciativa de Microsoft Regional Director como mentor en usabilidad y desarrollo de software.

En 2014 fundé UX Nights, una comunidad sobre experiencia de usuario. También soy escritor, ponente internacional y formador técnico en LinkedIn Education.

> www.about.me/mauricioangulo

Mauricio Angulo S.

Page 3: Atomic Design con Pattern Lab

Experiencia de Usuario

“Sentimientos, emociones y percepciones de una persona sobre un sistema o tecnología.”

Page 4: Atomic Design con Pattern Lab

“El diseño es demasiado importante para dejárselo a los diseñadores”

- Raymond Loewy

Page 5: Atomic Design con Pattern Lab

Desarrollo

DiseñoNegocio

Page 6: Atomic Design con Pattern Lab

Consistencia en el diseño

Page 7: Atomic Design con Pattern Lab

Una buena consistencia en software:

● Reduce la fricción y la curva de aprendizaje

● Aprovecha nuestra tendencia natural de encontrar patrones

● Es crítica para la construcción de una marca

● Ayuda a los usuarios a reconocer sus productos favoritos

● Refuerza las experiencias positivas

Google | Proprietary & Confidential

Page 8: Atomic Design con Pattern Lab
Page 9: Atomic Design con Pattern Lab
Page 10: Atomic Design con Pattern Lab
Page 11: Atomic Design con Pattern Lab

http://atomicdesign.bradfrost.com/

Page 12: Atomic Design con Pattern Lab
Page 13: Atomic Design con Pattern Lab
Page 14: Atomic Design con Pattern Lab
Page 15: Atomic Design con Pattern Lab
Page 16: Atomic Design con Pattern Lab
Page 17: Atomic Design con Pattern Lab
Page 18: Atomic Design con Pattern Lab

Página de inicio Blog Artículo

Page 19: Atomic Design con Pattern Lab
Page 20: Atomic Design con Pattern Lab
Page 21: Atomic Design con Pattern Lab
Page 22: Atomic Design con Pattern Lab
Page 23: Atomic Design con Pattern Lab
Page 24: Atomic Design con Pattern Lab
Page 25: Atomic Design con Pattern Lab
Page 26: Atomic Design con Pattern Lab
Page 27: Atomic Design con Pattern Lab
Page 28: Atomic Design con Pattern Lab
Page 29: Atomic Design con Pattern Lab
Page 30: Atomic Design con Pattern Lab
Page 31: Atomic Design con Pattern Lab

http://patternlab.io

Page 32: Atomic Design con Pattern Lab

http://patternlab.io/download.html

Page 33: Atomic Design con Pattern Lab

nodejs.org gulpjs.com

Page 34: Atomic Design con Pattern Lab

https://github.com/pattern-lab/edition-node-gulp

Page 35: Atomic Design con Pattern Lab

$ gulp --versionCLI version 1.2.2Local version 4.0.0-alpha.2

$ git clone https://github.com/pattern-lab/edition-node-gulp.git

$ cd edition-node-gulp$ npm install

$ gulp patternlab:serve[BS] Access URLs: ------------------------------------- Local: http://localhost:3000 External: http://192.168.1.70:3000 ------------------------------------- UI: http://localhost:3001 UI External: http://192.168.1.70:3001 -------------------------------------

Page 36: Atomic Design con Pattern Lab
Page 37: Atomic Design con Pattern Lab
Page 38: Atomic Design con Pattern Lab
Page 39: Atomic Design con Pattern Lab

<button class=”button”>Enviar</button>

source/_patterns/global/button.mustache

Page 40: Atomic Design con Pattern Lab
Page 41: Atomic Design con Pattern Lab
Page 42: Atomic Design con Pattern Lab

https://mustache.github.io

Page 43: Atomic Design con Pattern Lab

{ "key": "value", "key2": "use this for variables you want to load globally", "title": "Nullizzle shizznit velizzle, hizzle, suscipit own yo', gravida vizzle, arcu.", "btnText": "Da clic aquí", "img": { "avatar": { "src": "http://placeimg.com/100/100/people", "alt": "Avatar" }, "square": { "src": "http://placeimg.com/300/300/nature", "alt": "Square" }, "rectangle": { "src": "http://placeimg.com/400/300/tech", "alt": "Rectangle" }, "landscape-4x3": { "src": "http://placeimg.com/400/300/tech", "alt": "4x3 Image" }, "landscape-16x9": { "src": "http://placeimg.com/640/360/tech", "alt": "16x9 Image" } }, "headline": {

source/_data/data.json

Page 44: Atomic Design con Pattern Lab
Page 45: Atomic Design con Pattern Lab
Page 46: Atomic Design con Pattern Lab

/* * YOUR STYLES HERE */ button { padding: 15px; color: white;

text-transform: uppercase; border-radius: 7px; background-color: #333333; }

source/css/style.css

Page 47: Atomic Design con Pattern Lab
Page 48: Atomic Design con Pattern Lab

---title: Button---This is the main button for *call-to-action* in a page. There should be **no more that one of this buttons on a page** to improve user engagement.

source/_patterns/global/button.md

Page 49: Atomic Design con Pattern Lab
Page 50: Atomic Design con Pattern Lab

$ gulp patternlab:help

Loading engines from the edition or test directory...

mustache: good to go

====[ Pattern Lab / Node - v2.7.2 ]====

patternlab:build > Compiles the patterns and frontend, outputting to config.paths.public

Patternlab:version > Return the version of patternlab-node you have installed

patternlab:loadstarterkit > NOTE: In most cases, `npm install starterkit-name` will precede this call. > example (gulp): `gulp patternlab:loadstarterkit --kit=starterkit-mustache-demo

Page 51: Atomic Design con Pattern Lab

$ npm install starterkit-mustache-demo

$ gulp patternlab:loadstarterkit --kit=starterkit-mustache-demo

Page 52: Atomic Design con Pattern Lab
Page 53: Atomic Design con Pattern Lab
Page 54: Atomic Design con Pattern Lab
Page 55: Atomic Design con Pattern Lab
Page 56: Atomic Design con Pattern Lab
Page 57: Atomic Design con Pattern Lab

<a href="{{ url }}" class="c-block-hero">{{> atoms-hero:c-block-hero__img }}

<h2 class="c-block-hero__headline">{{ headline.medium }}</h2>

</a><!-- end c-block--hero -->

Page 58: Atomic Design con Pattern Lab
Page 59: Atomic Design con Pattern Lab
Page 60: Atomic Design con Pattern Lab

{{> organisms-header }}<main role="main">

{{# hero }} {{> molecules-block-hero }} {{/ hero}}

<div class="l"> {{> organisms-tout-list }} </div>

Page 61: Atomic Design con Pattern Lab
Page 62: Atomic Design con Pattern Lab
Page 63: Atomic Design con Pattern Lab

{"title" : "Home Page","bodyClass": "home","emergency" : false,

"imgHero" : { "src": "../../images/sample/hero-forest.jpg", "alt": "Forest" }, "headline" : { "medium" : "Track your hikes. Challenge your friends. Get out there and start exploring." },

"toutList" : [ {

"url": "link.pages-blog-detail","headline": {

"short" : "Best winter hikes around the world"},"imgLandscape" : {

"src": "../../images/sample/tout-winter-hiker.jpg", "alt": "Hiker with back pack walking in snow" } },

{"url": "link.pages-login","headline": {

"short" : "Sign in to view your dashboard"},

source/_patterns/04-pages/00-homepage.json

Page 64: Atomic Design con Pattern Lab
Page 65: Atomic Design con Pattern Lab
Page 66: Atomic Design con Pattern Lab
Page 67: Atomic Design con Pattern Lab

{ "comments" : [ { "el": "header[role=banner]", "title" : "Masthead", "comment": "The main header of the site doesn't take up too much screen real estate in order to keep the focus on the core content. It's using a linear CSS gradient instead of a background image to give greater design flexibility and reduce HTTP requests." }, { "el": ".c-logo-link", "title" : "Logo", "comment": "The logo image is an SVG file, which ensures that the logo displays crisply even on high resolution displays. A PNG fallback is provided for browsers that don't support SVG images.</p><p>Further reading: <a href=\"http://bradfrostweb.com/blog/mobile/hi-res-optimization/\">Optimizing Web Experiences for High Resolution Screens</a></p>" }, { "el": "#nav", "title" : "Navigation", "comment": "<p>Navigation for adaptive web experiences can be tricky. Top navigations are typical on desktop sites, but mobile screen sizes don't give us the luxury of space. We're dealing with this situation by creating a simple menu anchor that toggles the main navigation on small screens. This is just one method. <a href=\"http://bagcheck.com/\">Bagcheck</a> and <a href=\"http://contentsmagazine.com/\">Contents Magazine</a> add an anchor in the header that jumps users to the navigation which is placed in the footer. This solution works well because it doesn't require any Javascript in order to work. Other methods exist too. For example, <a href=\"http://m.espn.com\">ESPN's mobile navigation</a> overlays the main content of the page.</p><p>The nav is only hidden when a certain

source/_annotations/annotations.js

Page 68: Atomic Design con Pattern Lab
Page 69: Atomic Design con Pattern Lab
Page 70: Atomic Design con Pattern Lab

https://patternlab.io/docs/

Page 71: Atomic Design con Pattern Lab

https://patternlab.io/resources.html

Page 72: Atomic Design con Pattern Lab

http://atomicdesign.bradfrost.com/table-of-contents/

Page 73: Atomic Design con Pattern Lab

Mauricio Angulo S.Certified Sprintmaster & UX Architect

[email protected]@mauricioangulo

www.tesseractspace.com

¡Gracias!