Studies
Admissions
The Institute
Resources
Studies
Admissions
The Institute
Resources
Studies
Admissions
The Institute
Resources

FE404

Design Systems for Interactive Applications

Barcelona Campus
Nov 28, 2022 - Dec 16, 2022
Students will dive deep in the foundations of the Design Systems creation strategy and its biggest challenges from ideation to actual implementation.
Barcelona Campus
Nov 28, 2022 - Dec 16, 2022
Pablo Deeleman

Faculty

Pablo Deeleman

Frontend Architect at GitKraken

Course length

3 weeks

Duration

3 hours
per day

Total hours

45 hours

Credits

6 ECTS

Language

English

Course type

Offline

Fee for single course

€1500

Fee for degree students

€750

Skills you’ll learn

UXCopywritingHTMLCSSJavaScriptDesign SystemWeb Componentsa11yi18n
OverviewCourse outlineCourse materialsPrerequisitesMethod & grading

Overview

How do modern product designers and copywriters accomplish a recognizable voice and tone in all the expressions of the different products of their company offering? How do UX practitioners achieve a memorable visual projection that is always aligned between teams, products and applications? How do design and engineering teams manage to keep aligned and painlessly bridge the gap between visual expectations and actual implementation? How do UI developers build Agile interfaces without having to reinvent the wheel each time by leveraging a battle-tested set of components designed for maximum performance and interoperability? Last but not least, how can we achieve all this at scale given the fast pace dictated by modern times in products encompassing hundreds or even thousands of pages and screens? Design Systems have emerged as the way to go, being, in short, a complete set of standards intended to manage design at scale using reusable components and patterns.

Learning highlights

  • Explore the Design Systems concept as both a strategy and a tool to ensure a consistent visual language and a common.
  • Delve deep in the foundations of the Design Systems creation strategy and its biggest challenges from ideation to actual implementation.
  • Learn how to set a plan for conceiving, visualizing, implementing and rolling out a Design System.
  • Follow by example by obtaining a broad exposure to successful Design System implementations as the ones curated by key industry players such as Twilio, Elastic, Uber, Zendesk or GitHub just to name a few.
  • Explore the nuts and bolts of the Design System development agenda: from setting visual patterns to define content styling, choosing color or typographic rules or envision general-use guidelines for common UI layouts.
  • Embrace an engineering ethos to build for scale, spreading the concept to all the development stages, from visual concept to actual coding.
  • Explore the most common UI components in a Design System project, and its most frequent categories.
  • Learn to design for simplicity, diversity, internationalization and inclusivity.
  • Build our own Design System, from visual concept to actual code implementation.
  • Gain exposure to common tools of the trade in the Design Systems domain: versioning systems, monorepos, design tokens, changelogs, etc.

Course outline

15 classes

Dive into the details of the course and get a sense of what each class will cover.
Monday
Tuesday
Wednesday
Thursday
Friday
Monday
1

General introduction to Design Systems:

What is a Design System?

Benefits of a Design System.

A little history of Design Systems.

Why we need to learn about Design Systems.

Parts of a Design System: Design foundations, content principles, UI patterns, style themes, design process checklist, a11y rules and UI components.

What do we need to build a Design System: Skills and tools required.

Roles in Design Ops Teams: UX designer, UI designer, Front-end engineer, Build systems engineer.

Live Examples.

Tuesday
2

Deep dive into the parts and agenda of a Design System:

Getting our organization to embrace Design Systems.

Identify user groups.

Create design principles.

Define content guidelines.

Voice and tone.

Defining core patterns.

Designing roadmaps.

Implement primitives, components and providers.

Working on top of seed libraries. Pros and cons and examples.

Live Example.

Wednesday
3

Front-end foundations for Design Systems:

Component types: Primitives, Theming, Layout and Grid components, Templates, Navigation, Tabular components, Display, Forms, Charting.

i18n: Localization and internationalization.

a11y: Accessibility.

Design tokens.

Live workshop: Implementing Design tokens with Figma, CSS variables and React.

Thursday
4

Setting a process for introducing a new entity in our Design System:

The case for the UI element.

Intended use.

Composition and interoperability with other components.

Anatomy of a UI Component in Design Systems: variants, roles, placement, boolean props.

The API proposal.

Forwarded API.

Controlled vs Uncontrolled components.

The design proposal.

Tokens required.

Animation.

Style API.

Live workshop: Discussing and implementing a labelled input component.

Friday
5

Workshop segment: Finding elements for our Design System.

Stock photo providers.

Design tools: Figma, Sketch, Adobe Xd.

Design tokens framework.

Versioning system.

Icon libraries.

Front-end framework: React, Preact, Angular, VueJS, Svelte, SolidJS, Lit, Polymer - Web components.

CSS-in-JS frameworks: Styled components, Emotion…

Documenting systems.

Live workshop: Testing sandboxes: Storybook, Bit.dev…

Demo segment: Students will present their Design System proposals.

Monday
6

Building segment I: The code environment

Picking a FE framework.

Picking a seed UI library.

Bootstrapping our dev environment.

Design tokens pipeline / CSS bridging between design and front-end.

Heading and text primitives.

Tuesday
7

Building segment II: Layout components

Stack components.

Flex components.

Vertical flex.

Skeleton component.

Wednesday
8

Building segment III: Complex layouts

Grids.

Responsive grids.

Thursday
9

Building segment IV: Form components

Button components.

Text Input and textarea components Input labels.

Help text components.

Combo boxes.

Radio buttons and groups.

Checkbox controls and groups.

Advanced components overview: Date selector, tag input, file input, color selection, range sliders.

Friday
10

Building segment V: Text content components

Heading components.

Paragraph components.

List components.

Callout components and variants.

Quote components.

Inline and block code components.

Monday
11

Building segment VI: Navigational components

Anchor components.

Breadcrumb components.

Context menu.

Facet nav.

Pagination.

Tabs nav.

Tuesday
12

Building segment VII: Display components

Card components.

Badge components.

Alert components.

Accordion components.

Separator (vertical & horizontal) components.

Advanced display components overview: carrousel, avatar, popover.

Wednesday
13

Building segment VIII: Tabular components

Table components.

Gridview components.

Thursday
14

Building segment IX: Overlay components

Tooltip components.

Popover components.

Modal component.

Alert dialog component.

Prompt dialog component.

Flyout components.

Toaster notification components.

Friday
15

Workshop segment: Promoting our Design System and creating a community around it.

Governance, support and feedback.

Creating consumer resources: User kits, changelogs, newsletters, office hours.

Promoting our library inside and outside our organizations.: Live workshops, dev events, etc.

Demo segment: Teams will showcase the component collections of their Design Systems Final words and closure.

Prerequisites

Basic English copywriting skills.

Basic knowledge of UI design via Figma, Sketch or any other UI/UX ideation tool.

Front End development skills for component development in either React, VueJS, Angular or plain vanilla HTML+CSS.

Methodology

1. In the initial phase, we will explore Design Systems as a concept. We will conduct an exploration on thThen we will take a journey along the different steps required to build a Design System of our own, paying special attention to how to set proper foundations, pick the right visual language and design and develop for scale.e case for Design Systems, their purpose, areas, components and goals. We will illustrate this with actual examples of successful Design Systems.

2. Then we will take a journey along the different steps required to build a Design System of our own, paying special attention to how to set proper foundations, pick the right visual language and design and develop for scale.

3. We will take our exploration of Design Systems a step further then by taking a more comprehensive overview of successful Design Systems maintained by key industry players. We will analyze two of them in comparison and the students, divided into groups, will build a small pet project with them, fostering a discussion about the challenges encountered in the process and the gaps found in the outcome.

4. We will face the last segment of the course with the implementation and rollout of our own Design System. The students will work in groups (as if they were an actual agency or design ops team) to design a full blown up Design System, from end to end.

5. Aside from the coursework, students will have to conduct presentations to pitch their analysis of existing Design Systems and their own Design System proposal to the other groups.

Grading

The final grade will be composed of the following criteria:
40% - Theory
40% - Hands-on coding
20% - Research and discussion
Coursework encompasses both theory, both guided and self-conducted research and hands-on work on component libraries. Final grading will be the result of evaluating the class assignments and front-end code exercises, both individually and in groups. Bonus points will go for exceptional attitude in class participation.
Pablo Deeleman

Faculty

Pablo Deeleman

Frontend Architect at GitKraken

Pablo Deeleman has been standing in the intersection between corporate identity, UX management, UI design, web development and, particularly, front-end engineering for the past 25 years. With a master's degree in Marketing and Business Administration, Pablo developed his career in both USA and Europe as a UX designer, and later transitioned to UI engineering and development.

Over the past two decades, Pablo has been involved in dozens of projects combining design management, UX research and front-end planning and development, for both startups and large corporations such as Gameloft, Red Hat or Twilio. As a Frontend Architect at GitKraken, Pablo leads front-end initiatives within the GitKraken Labs team, working closely with cross-functional teams to tackle complex challenges, improve software architecture, and explore new technologies that accelerate innovation, ensuring that GitKraken’s tools meet the evolving needs of over 30 million developers globally.

See full profile

Apply for this course

Snap up your chance to enroll before all spaces fill up.

Design Systems for Interactive Applications

by Pablo Deeleman

Total hours

45 Hours

Dates

Nov 28 - Dec 16, 2022

Fee for single course

€1500

Fee for degree students

€750

How to secure your spot

Complete the form below to kickstart your application

Schedule your Harbour.Space interview

If successful, get ready to join us on campus

FAQ

Will I receive a certificate after completion?

Yes. Upon completion of the course, you will receive a certificate signed by the director of the program your course belonged to.

Do I need a visa?

This depends on your case. Please check with the Spanish or Thai consulate in your country of residence about visa requirements. We will do our part to provide you with the necessary documents, such as the Certificate of Enrollment.

Can I get a discount?

Yes. The easiest way to enroll in a course at a discounted price is to register for multiple courses. Registering for multiple courses will reduce the cost per individual course. Please ask the Admissions Office for more information about the other kinds of discounts we offer and what you can do to receive one.