Alegra’s design system
Alegra’s design system

Smile

Smile

ROLE / SERVICES

ROLE / SERVICES

ROLE / SERVICES

Design & Handoff

Design & Handoff

Design & Handoff

Project type

Project type

Project type

Design system

Design system

Design system

COMPANY & location

COMPANY & location

COMPANY & location

Alegra / Latam

Alegra / Latam

Alegra / Latam

BEFORE WE START

INTRODUCTION

BEFORE WE START

INTRODUCTION

BEFORE WE START

INTRODUCTION

BEFORE WE START

INTRODUCTION

The project

Iterate and build Alegra's Design system, Smile UI; a closed-source design system that would give designers and developers the tools they need to create engaging product experiences.

The project

Iterate and build Alegra's Design system, Smile UI; a closed-source design system that would give designers and developers the tools they need to create engaging product experiences.

The project

Iterate and build Alegra's Design system, Smile UI; a closed-source design system that would give designers and developers the tools they need to create engaging product experiences.

The project

Iterate and build Alegra's Design system, Smile UI; a closed-source design system that would give designers and developers the tools they need to create engaging product experiences.

The challenge

Create a design system from scratch, from the base elements to the components, and ensure that once the components have been built and the complexity has been added, any designer or developer can still easily understand the design system.

The challenge

Create a design system from scratch, from the base elements to the components, and ensure that once the components have been built and the complexity has been added, any designer or developer can still easily understand the design system.

The challenge

Create a design system from scratch, from the base elements to the components, and ensure that once the components have been built and the complexity has been added, any designer or developer can still easily understand the design system.

The challenge

Create a design system from scratch, from the base elements to the components, and ensure that once the components have been built and the complexity has been added, any designer or developer can still easily understand the design system.

The process

Add Design thinking to constantly improve the design system and get ongoing feedback from all teams. It began with discussions and brainstorms with the team to truly figure out what needed to be in the Design System.

The process

Add Design thinking to constantly improve the design system and get ongoing feedback from all teams. It began with discussions and brainstorms with the team to truly figure out what needed to be in the Design System.

The process

Add Design thinking to constantly improve the design system and get ongoing feedback from all teams. It began with discussions and brainstorms with the team to truly figure out what needed to be in the Design System.

The process

Add Design thinking to constantly improve the design system and get ongoing feedback from all teams. It began with discussions and brainstorms with the team to truly figure out what needed to be in the Design System.

Consulting with the team

A design system succeeds when it serves its users—designers and developers. Gathering their feedback helps identify pain points, refine components, and improve workflows. By listening to their needs, we can create a system that’s not just consistent but truly functional and scalable.

Consulting with the team

A design system succeeds when it serves its users—designers and developers. Gathering their feedback helps identify pain points, refine components, and improve workflows. By listening to their needs, we can create a system that’s not just consistent but truly functional and scalable.

Consulting with the team

A design system succeeds when it serves its users—designers and developers. Gathering their feedback helps identify pain points, refine components, and improve workflows. By listening to their needs, we can create a system that’s not just consistent but truly functional and scalable.

Consulting with the team

A design system succeeds when it serves its users—designers and developers. Gathering their feedback helps identify pain points, refine components, and improve workflows. By listening to their needs, we can create a system that’s not just consistent but truly functional and scalable.

Creating user stories

Creating user stories helps keep the design system grounded in real needs. By putting ourselves in the shoes of designers and developers, we can spot what’s working, what’s missing, and what needs fixing. It’s a simple way to make sure the system supports real workflows, not just ideal ones.

Creating user stories

Creating user stories helps keep the design system grounded in real needs. By putting ourselves in the shoes of designers and developers, we can spot what’s working, what’s missing, and what needs fixing. It’s a simple way to make sure the system supports real workflows, not just ideal ones.

Creating user stories

Creating user stories helps keep the design system grounded in real needs. By putting ourselves in the shoes of designers and developers, we can spot what’s working, what’s missing, and what needs fixing. It’s a simple way to make sure the system supports real workflows, not just ideal ones.

Creating user stories

Creating user stories helps keep the design system grounded in real needs. By putting ourselves in the shoes of designers and developers, we can spot what’s working, what’s missing, and what needs fixing. It’s a simple way to make sure the system supports real workflows, not just ideal ones.

Designer User Story
Designer User Story

As a product designer, I want to quickly find and use standardized UI components from the design system, So that I can create high-fidelity mockups efficiently while ensuring consistency across the product.

Developer User Story
Developer User Story

As a front-end developer, I want to have well-documented, reusable components from the design system, So that I can implement UI elements faster and maintain code consistency without redesigning components from scratch.

01

01

01

01

/

/

/

/

Chapter
Chapter
Chapter

Design tokens

Design tokens

Design tokens

Design tokens

(Smile tokens)

Creating design tokens

(Smile tokens)

Creating design tokens

(Smile tokens)

Creating design tokens

(Smile tokens)

Creating design tokens

What are design tokens?

These are the foundations of any design system. Tokens consist of values needed to construct and maintain a design system, such as spacing, color, typography, border radius, and breakpoints. Creating a design token for this design system takes two steps.

What are design tokens?

These are the foundations of any design system. Tokens consist of values needed to construct and maintain a design system, such as spacing, color, typography, border radius, and breakpoints. Creating a design token for this design system takes two steps.

What are design tokens?

These are the foundations of any design system. Tokens consist of values needed to construct and maintain a design system, such as spacing, color, typography, border radius, and breakpoints. Creating a design token for this design system takes two steps.

What are design tokens?

These are the foundations of any design system. Tokens consist of values needed to construct and maintain a design system, such as spacing, color, typography, border radius, and breakpoints. Creating a design token for this design system takes two steps.

Primitive token

Primitive token

Tokens replace static values, such as hex codes for color, with self-explanatory names. The global tokens have a code-like name, such as: Blue -100 and an associated value like : #A6DDF8.

Semantic token

Semantic token

Semantic tokens are context-specific, instead of referring to colors by what they are, they reference another token. For example, surface-secondary refers to the global token slate-100 that has the value of  #F8FAFC, and its role or context is to be used on a container with the value of surface-primary.

#A6DDF8.

blue-100

surface.secondary

slate-100

#A6DDF8.

blue-100

surface.secondary

slate-100

#A6DDF8.

blue-100

surface.secondary

slate-100

Examples

Examples

Examples

Color ramp

Color ramp

Color ramp

Color docs

Color docs

Color docs

Typography docs

Typography docs

Typography docs

02

02

02

02

/

/

/

/

Chapter
Chapter
Chapter

Components

Components

Components

Components

Time for some research

Investigation

Time for some research

Investigation

Time for some research

Investigation

Time for some research

Investigation

Famous design systems

Take a look at other well-known design systems, like material design or carbon design, to learn how they solve a common problem, how they structure the components, and what elements they have.

Famous design systems

Take a look at other well-known design systems, like material design or carbon design, to learn how they solve a common problem, how they structure the components, and what elements they have.

Famous design systems

Take a look at other well-known design systems, like material design or carbon design, to learn how they solve a common problem, how they structure the components, and what elements they have.

Famous design systems

Take a look at other well-known design systems, like material design or carbon design, to learn how they solve a common problem, how they structure the components, and what elements they have.

Design systems resources

There are a lot of resources such as articles, case studies, videos among others, that help give a guide or clearance on how to create a design system. It's very helpful to read and get as much information as possible.

Design systems resources

There are a lot of resources such as articles, case studies, videos among others, that help give a guide or clearance on how to create a design system. It's very helpful to read and get as much information as possible.

Design systems resources

There are a lot of resources such as articles, case studies, videos among others, that help give a guide or clearance on how to create a design system. It's very helpful to read and get as much information as possible.

Design systems resources

There are a lot of resources such as articles, case studies, videos among others, that help give a guide or clearance on how to create a design system. It's very helpful to read and get as much information as possible.

Now for the fun part

Creating the components

Now for the fun part

Creating the components

Now for the fun part

Creating the components

Now for the fun part

Creating the components

The requirements & sketching

Create a list of requirements that the component needs to have in order to solve the problem it's intended to. Then make a quick sketch of how you visualize the structure of the component.

The requirements & sketching

Create a list of requirements that the component needs to have in order to solve the problem it's intended to. Then make a quick sketch of how you visualize the structure of the component.

The requirements & sketching

Create a list of requirements that the component needs to have in order to solve the problem it's intended to. Then make a quick sketch of how you visualize the structure of the component.

The requirements & sketching

Create a list of requirements that the component needs to have in order to solve the problem it's intended to. Then make a quick sketch of how you visualize the structure of the component.

What it needs

Title

Description

Three action buttons (on / off visibility)

Slot (on / off visibility)

Image (on / off visibility)

Designing process

This is the most fun part of the process. With all the information gathered and with help from the sketch, bring the idea to life (We use figma in alegra). Each component has different properties like titles, descriptions, button quantity, slots, etc. They also need variants to ensure versatility and flexibility.It’s important that the design and construction are scalable to ensure that it’s future-proof.

Designing process

This is the most fun part of the process. With all the information gathered and with help from the sketch, bring the idea to life (We use figma in alegra). Each component has different properties like titles, descriptions, button quantity, slots, etc. They also need variants to ensure versatility and flexibility.It’s important that the design and construction are scalable to ensure that it’s future-proof.

Designing process

This is the most fun part of the process. With all the information gathered and with help from the sketch, bring the idea to life (We use figma in alegra). Each component has different properties like titles, descriptions, button quantity, slots, etc. They also need variants to ensure versatility and flexibility.It’s important that the design and construction are scalable to ensure that it’s future-proof.

Designing process

This is the most fun part of the process. With all the information gathered and with help from the sketch, bring the idea to life (We use figma in alegra). Each component has different properties like titles, descriptions, button quantity, slots, etc. They also need variants to ensure versatility and flexibility.It’s important that the design and construction are scalable to ensure that it’s future-proof.

Testing & publishing

Design a prototype of a real world usage where the component would be used and measure if the solution is the best. It was shared to the team so they could test it out and then give feedback about the usability, versatility, flexibility, scalability and accessibility.After that you can publish the component so everyone can make use of it.

Testing & publishing

Design a prototype of a real world usage where the component would be used and measure if the solution is the best. It was shared to the team so they could test it out and then give feedback about the usability, versatility, flexibility, scalability and accessibility.After that you can publish the component so everyone can make use of it.

Testing & publishing

Design a prototype of a real world usage where the component would be used and measure if the solution is the best. It was shared to the team so they could test it out and then give feedback about the usability, versatility, flexibility, scalability and accessibility.After that you can publish the component so everyone can make use of it.

Testing & publishing

Design a prototype of a real world usage where the component would be used and measure if the solution is the best. It was shared to the team so they could test it out and then give feedback about the usability, versatility, flexibility, scalability and accessibility.After that you can publish the component so everyone can make use of it.

03

03

03

03

/

/

/

/

Chapter
Chapter
Chapter

Documentation

Documentation

Documentation

Documentation

Last but certainly not least

The documentations

Last but certainly not least

The documentations

Last but certainly not least

The documentations

Last but certainly not least

The documentations

The Role

Clear documentation makes a design system actually usable. It guides teams on how and when to use components, reducing confusion and keeping things consistent. We decided to create two different documentations, one for designers and another one for developers.

The Role

Clear documentation makes a design system actually usable. It guides teams on how and when to use components, reducing confusion and keeping things consistent. We decided to create two different documentations, one for designers and another one for developers.

The Role

Clear documentation makes a design system actually usable. It guides teams on how and when to use components, reducing confusion and keeping things consistent. We decided to create two different documentations, one for designers and another one for developers.

The Role

Clear documentation makes a design system actually usable. It guides teams on how and when to use components, reducing confusion and keeping things consistent. We decided to create two different documentations, one for designers and another one for developers.

Why two different documentations?

Designers focus on using components in Figma, while developers need specs and Tailwind tokens for implementation. By creating separate documentation, we ensured each team gets the right information—clear, relevant, and easy to navigate—while keeping the system cohesive.

Why two different documentations?

Designers focus on using components in Figma, while developers need specs and Tailwind tokens for implementation. By creating separate documentation, we ensured each team gets the right information—clear, relevant, and easy to navigate—while keeping the system cohesive.

Why two different documentations?

Designers focus on using components in Figma, while developers need specs and Tailwind tokens for implementation. By creating separate documentation, we ensured each team gets the right information—clear, relevant, and easy to navigate—while keeping the system cohesive.

Why two different documentations?

Designers focus on using components in Figma, while developers need specs and Tailwind tokens for implementation. By creating separate documentation, we ensured each team gets the right information—clear, relevant, and easy to navigate—while keeping the system cohesive.

Developer documentation

Each section is structured with a table and a graphic. The tables map attributes like font size, height, and color to their Tailwind CSS tokens (e.g., text-xs, h-4, surface-secondary). The graphics bring these details to life, offering a visual reference for clearer, more intuitive understanding.

Developer documentation

Each section is structured with a table and a graphic. The tables map attributes like font size, height, and color to their Tailwind CSS tokens (e.g., text-xs, h-4, surface-secondary). The graphics bring these details to life, offering a visual reference for clearer, more intuitive understanding.

Developer documentation

Each section is structured with a table and a graphic. The tables map attributes like font size, height, and color to their Tailwind CSS tokens (e.g., text-xs, h-4, surface-secondary). The graphics bring these details to life, offering a visual reference for clearer, more intuitive understanding.

Developer documentation

Each section is structured with a table and a graphic. The tables map attributes like font size, height, and color to their Tailwind CSS tokens (e.g., text-xs, h-4, surface-secondary). The graphics bring these details to life, offering a visual reference for clearer, more intuitive understanding.

Designer documentation

The idea of this documentation is to give the designers guidelines about how to implement the components in their designs, rather than knowing how they were built. This helps to maintain the look and feel of the product consist throughout the designs..

Designer documentation

The idea of this documentation is to give the designers guidelines about how to implement the components in their designs, rather than knowing how they were built. This helps to maintain the look and feel of the product consist throughout the designs..

Designer documentation

The idea of this documentation is to give the designers guidelines about how to implement the components in their designs, rather than knowing how they were built. This helps to maintain the look and feel of the product consist throughout the designs..

Designer documentation

The idea of this documentation is to give the designers guidelines about how to implement the components in their designs, rather than knowing how they were built. This helps to maintain the look and feel of the product consist throughout the designs..

Did it work?

The payoff

Did it work?

The payoff

Did it work?

The payoff

Did it work?

The payoff

What where the results?

Increased efficiency through the designing and development of the website. It also helps create an organic look and feel between all the products of Alegra and less back and forth between designers and developers, and reduced friction.

What where the results?

Increased efficiency through the designing and development of the website. It also helps create an organic look and feel between all the products of Alegra and less back and forth between designers and developers, and reduced friction.

What where the results?

Increased efficiency through the designing and development of the website. It also helps create an organic look and feel between all the products of Alegra and less back and forth between designers and developers, and reduced friction.

What where the results?

Increased efficiency through the designing and development of the website. It also helps create an organic look and feel between all the products of Alegra and less back and forth between designers and developers, and reduced friction.

03/

Did you like what
you saw?

SEND ME A
MESSAGE

03/

Did you like what
you saw?

SEND ME A
MESSAGE

03/

Did you like what
you saw?

SEND ME A
MESSAGE

03/

Did you like what
you saw?

SEND ME A
MESSAGE