José Silva logo

Design System

Citric Design System

Citric is a design system that helps create clean, consistent, and scalable interfaces. It unifies styles, components, and rules, making the design process faster.

Year2020
IndustryTech
ClientItaú / Zup I.T.
Project Duration6 Years

A unified system of reusable foundations and components that brings clarity, consistency, and structure to every interface.

What's inside
Color system preview

Color system

Consistent color tokens and palettes for scalable themes and clear visual hierarchy.

Typography preview

Typography

A flexible type system with predefined roles and scales for readable interfaces.

Spacing and radius preview

Spacing and Radius

Structured spacing, sizing, and corner rules that keep layouts balanced and predictable.

Icons preview

Icons

A huge icon set designed to stay clear, meaningful, and visually aligned.

Grid system preview

Grid System

Responsive grids for consistent layouts across screen sizes and breakpoints.

Shadows preview

Shadows and more

Depth and elevation styles that add clarity, focus, and visual rhythm.

Atomic design principles

Atomic Design is a modular approach that breaks interfaces into reusable pieces, making their structure clear and connected.

Design tokens illustration

Design Tokens

Core variables that define colors, typography, spacing.

Atoms illustration

Atoms

The smallest UI parts: icons, buttoms and input fields.

Molecules illustration

Molecules

Groups of atoms forming simple componentes.

Organisms illustration

Organisms

Larger components made of molecules and atoms.

Templates illustration

Templates

layouts showing how components connect withim a structure.

Pages illustration

Pages

Final screens filled with real data and content.

Design systems start with strong foundations.
They define how components look, behave, and scale across the entire product.

Typography

Foundations

The typographic system defines text styles as design tokens and explains how titles and body text should be applied.

A wide range of clearly organized text styles, making it easy to select the right option for any screen or interface element.

Citric typography scale and text style tokens

Color system

Foundations

A flexible palette of semantic and functional colors that keeps interfaces consistent, clear, and expressive across the entire product.

11.23Light5 Colors
1.40Dark5 Colors
2.31Primary5 Colors
7.52Success5 Colors
6.02Error5 Colors
10.04Warning5 Colors
11.22Blue10 Colors
8.02Pink10 Colors
10.10Green10 Colors
10.61Tea10 Colors

Primitive colors

As the foundation of the palette, primitive colors define backgrounds, text, and neutral Ul surfaces, creating a consistent base that supports semantic and brand palettes across the entire interface.

Every color combination in the system was validated against WCAG contrast standards. This ensures that text and Ul elements remain readable and accessible across light and dark themes, regardless of size, state, or context.

Light5 Colors
11.23 AAAAAA1.87300#bcbccf
1.5913.18 AAAAAA400#2f2f3c
1.4014.96 AAAAAA500#262631
1.2516.74 AAAAAA600#1d1d25
1.1418.35 AAAAAA700#14141a
Inverse5 Colors
1.4014.96 AAAAAA300#262631
11.23 AAAAAA1.87400#bcbccf
13.89 AAAAAA1.51500#d1d1de
16.76 AAAAAA1.25600#e5e5ed
19.61 AAAAAA1.07700#f7f7f8
Primary5 Colors
7.20 AAAAAA2.92300#ff6633
5.93 AAAAA3.54AA400#e65c2e
4.81 AAAAA4.37AA500#cc5229
4.30AA4.88 AAAAA600#bf4d26
3.04AA6.90 AAAAA700#993d1f
Secondary5 Colors
3.10AA6.77 AAAAA300#3834ff
2.687.82 AAAAAA400#322fe6
2.319.07 AAAAAA500#2d2acc
2.149.81 AAAAAA600#2a27bf
1.7212.18 AAAAAA700#221f99
Tertiary5 Colors
2.917.22 AAAAAA300#6633cc
2.548.27 AAAAAA400#5c2eb8
2.209.52 AAAAAA500#5229a3
2.0510.23 AAAAAA600#4d2699
1.6812.53 AAAAAA700#3d1f7a
Highlight5 Colors
9.81 AAAAAA2.14300#ff9900
8.00 AAAAAA2.63400#e68a00
6.35 AAAAA3.31AA500#cc7a00
5.67 AAAAA3.71AA600#bf7300
3.89AA5.40 AAAAA700#995c00
Success5 Colors
11.73 AAAAAA1.79300#91d191
9.49 AAAAAA2.21400#83bc83
7.52 AAAAAA2.79500#74a774
6.69 AAAAA3.14AA600#6d9d6d
4.48AA4.69 AAAAA700#577d57
Error5 Colors
9.25 AAAAAA2.27300#ff8a8a
7.54 AAAAAA2.79400#e67c7c
6.02 AAAAA3.49AA500#cc6e6e
5.40 AAAAA3.89AA600#bf6868
3.72AA5.65 AAAAA700#995353
Warning5 Colors
15.97 AAAAAA1.32300#f8e080
12.83 AAAAAA1.64400#dfca73
10.04 AAAAAA2.09500#c6b366
8.86 AAAAAA2.37600#baa860
5.80 AAAAA3.62AA700#95864d
Blue10 Colors
19.65 AAAAAA1.0750#ebfaff
17.03 AAAAAA1.23100#c0efff
15.50 AAAAAA1.35200#a1e8ff
13.56 AAAAAA1.55300#76ddff
12.52 AAAAAA1.68400#5cd6ff
11.22 AAAAAA1.87500#33ccff
9.30 AAAAAA2.26600#2ebae8
5.79 AAAAA3.63AA700#2491b5
3.75AA5.61 AAAAA800#1c708c
2.588.15 AAAAAA900#15566b
Pink10 Colors
19.10 AAAAAA1.1050#fff0fa
15.52 AAAAAA1.35100#ffd0ef
13.36 AAAAAA1.57200#ffb9e8
10.79 AAAAAA1.95300#ff98dd
9.58 AAAAAA2.19400#ff85d6
8.02 AAAAAA2.62500#ff66cc
6.71 AAAAA3.13AA600#e85dba
4.30AA4.88 AAAAA700#b54891
2.917.20 AAAAAA800#8c3870
2.119.98 AAAAAA900#6b2b56
Green10 Colors
19.36 AAAAAA1.0850#e6faf5
16.26 AAAAAA1.29100#b0efdf
14.53 AAAAAA1.44200#8ae8d0
12.44 AAAAAA1.69300#54ddbb
11.36 AAAAAA1.85400#33d6ad
10.10 AAAAAA2.08500#00cc99
8.40 AAAAAA2.50600#00ba8b
5.27 AAAAA3.98AA700#00916d
3.45AA6.09 AAAAA800#007054
2.418.73 AAAAAA900#005640
Tea10 Colors
19.65 AAAAAA1.0750#f7f9e6
17.02 AAAAAA1.23100#e7ecb0
15.40 AAAAAA1.36200#dce38a
13.29 AAAAAA1.58300#cbd654
12.14 AAAAAA1.73400#c1ce33
10.61 AAAAAA1.98500#b2c200
8.83 AAAAAA2.38600#a2b100
5.52 AAAAA3.80AA700#7e8a00
3.62AA5.80 AAAAA800#626b00
2.488.48 AAAAAA900#4b5100
Yellow10 Colors
20.07 AAAAAA1.0550#fffae6
18.23 AAAAAA1.15100#ffefb0
17.16 AAAAAA1.22200#ffe88a
15.72 AAAAAA1.34300#ffdd54
14.92 AAAAAA1.41400#ffd633
13.89 AAAAAA1.51500#ffcc00
11.45 AAAAAA1.83600#e8ba00
7.01 AAAAAA2.99700#b59100
4.43AA4.74 AAAAA800#8c7000
2.967.10 AAAAAA900#6b5600
Grey10 Colors
20.29 AAAAAA1.0350#fbfbfb
18.59 AAAAAA1.13100#f1f1f1
17.46 AAAAAA1.20200#eaeaea
16.06 AAAAAA1.31300#e1e1e1
15.17 AAAAAA1.38400#dbdbdb
13.89 AAAAAA1.51500#d2d2d2
11.42 AAAAAA1.84600#bfbfbf
7.01 AAAAAA3.00700#959595
4.49AA4.67 AAAAA800#747474
2.957.11 AAAAAA900#585858

Spacing and radius

Foundations

A consistent spacing and radius scale creates visual rhythm and predictable layouts. Each value exists as a reusable token, simplifying alignment across the interface.

Citric spacing scale bars

Spacing

By establishing consistent Spacing values for margins, paddings, and alignments, teams can achieve visual harmony and enhance the overall user experience.

Spacing token: scale, variable and value
Spacing tokens applied to a card layout

Border Radius

Radius help make Ul personable, easier to process, and recognizable at a glance. Selecting the correct radius for components builds consistent visual vocabulary and narrative.

Radius token: scale, variable and value
Radius tokens applied to components

Shadows

Foundations

Shadows create depth and focus within the interface. A unified scale ensures visual hierarchy and keeps components looking consistent across different contexts.

Citric shadow elevation scale

Grid System

Foundations

Shadows create depth and focus within the interface. A unified scale ensures visual hierarchy and keeps components looking consistent across different contexts.

Citric responsive grid definitions

Icons

Foundations

A unified icon system built on consistent stroke, size, and grid rules. Icons stay clear and readable at any scale and adapt to semantic colors automatically.

Citric icon grid and stroke anatomy

+250 icons

A comprehensive library of more than 250 icons, carefully organized into four distinct categories. Quickly find what you need through an intuitive structure that simplifies navigation, reduces search time, and makes icon selection faster and more efficient.

Illustrations

Foundations

To create a more consistent and engaging experience across the ecosystem, Citric includes a dedicated illustration library designed to support communication, orientation, and empty-state experiences throughout the product. The illustration system is organized into two main categories: Entity Illustrations and Error State Illustrations.

Entities

Were created to represent the core objects and modules available across the platform. These illustrations act as visual placeholders in empty states, onboarding moments, and content creation flows, helping users quickly understand the context of each section. The library includes dedicated illustrations for entities such as Accounts, Studios, Workspaces, Service Catalog, Stacks, Actions, and other product modules, ensuring visual consistency regardless of where users are navigating.

Entity illustrations

Error States

Were designed to make system feedback more approachable and human. Rather than relying solely on text messages, these illustrations help communicate issues such as missing content, unavailable resources, permission restrictions, and unexpected failures, reducing frustration while maintaining the product’s visual identity.

Error state illustrations

Simple Components

A library of essential Ul components built on shared tokens and properties. Each element follows the same spacing, sizing, and state logic to keep the interface consistent.

Buttons preview

Buttoms

Built with semantic colors and consistent states for clarity.

Input fields preview

Input Fields

Clear hierarchy: label, field, help text, and validation states.

Badge preview

Badge

Highlights status or count using semantic color tokens.

Avatars preview

Avatars

Visual identifiers with support for user status and grouping.

Switch preview

Switch and more

Simple selection controls with clear active and focus states.

Tooltips preview

Tooltips

Reveals additional context without interrupting the flow.

Buttoms

Buttons adapt to different use cases through shared variables: size, palette, type, and state. Every button follows the same spacing, grid, and logic, making interactions consistent across the entire interface.

Button variants

Smart variations

Buttons are built on semantic tokens and adaptive properties. Sizes, colors, and icons can be adjusted through variables, keeping the component flexible while preserving structure and clarity.

Button smart variations

Input Fields

Input fields are built from reusable tokens — spacing, states, icons, and labels. This keeps interactions predictable and helps designers build forms faster.

Input field variants

Anatomy

The core structure includes label, field, and help text. Optional add-ons - prefix/suffix, icons, actions, and masks — fit the same grid and spacing for clarity.

Input field anatomy

States and variants

Inputs support multiple visual styles and clear interaction states — default, typing, focus, error, disabled — ensuring predictable behavior across scenarios.

Input field states and variants

Badges

A unified icon system built on consistent stroke, size, and grid rules. Icons stay clear and readable at any scale and adapt to semantic colors automatically.

Badge variants

Smart variations

Badges use the same spacing, color, and rules, keeping the interface consistent while adapting to different states and palettes.

Badge smart variations

Avatars

Avatars visually represent users, team members, or entities. They adjust to any context - supporting text initials, photos, or custom illustrations.

Avatar variants

Smart variations

Built on shared sizing, spacing, and color tokens, avatars remain consistent across shapes and content types. They adapt to text initials, images, and illustrations, ensuring clarity and visual balance in any

Avatar smart variations

Sizes

Choose the most appropriate size for each use case. Avatars scale consistently while preserving legibility, proportions, and visual recognition across lists, cards, tables, and collaborative experiences.

Avatar sizes

Colors

Use color variations to enhance identity, differentiation, and quick user recognition. Each option follows the design system palette, ensuring visual consistency and accessible contrast across different contexts and interfaces.

Avatar colors

Switches, checkboxes, radiobuttons

These controls allow users to make quick selections or toggle states. Each component adapts to various palettes, sizes, and interaction states while maintaining a unified visual language.

Switches, checkboxes and radio buttons

Smart Variations

All components follow shared spacing, sizing, and stroke rules, ensuring consistent visuals and interaction patterns across the entire interface.

Selection control variations

Tooltips

Tooltips provide quick contextual hints without interrupting the user flow. They appear on hover or focus and help users understand actions, icons, or controls instantly.

Tooltip variants

Lightweight and informative

Tooltips adapt to different placements and component sizes, keeping spacing and styling consistent across variations.

Tooltip placements

Complex Components

Complex components combine multiple simple components into structured patterns. Each one follows shared spacing, typography, and semantic rules, ensuring consistency, scalability, and predictable behavior across the interface.

Tables preview

Tables

Designed for efficient content scanning with clear hierarchy and spacing.

Panels preview

Panels

Present key metrics at a glance using compact and structured layouts.

Menu preview

Menu

Contextual actions grouped logically to improve user decision-making.

Calendar preview

Calendar

Display dates and events clearly with adaptive layout and spacing tokens.mponents made of molecules and atoms.

File uploader preview

File uploader

Handles different file states with clear progress and feedback patterns.

More components preview

And 58+ more components

Tables

Tables combine multiple Ul components — filters, pagination, badges, icons — into a flexible data-presentation pattern. Shared spacing, typography, and interaction rules keep the interface clear and easy to scan.

Table component with filters and pagination

Reusable cell components

Table cells reuse simple Ul components — Avatars, Buttons, Rating, Progress — resulting in scalable layouts that are easy to adjust without breaking consistency.

Reusable table cells

Panels

Statistical widgets visualize key metrics in a clear and compact format. Data, labels, icons and states are combined into flexible cards that adapt to any scenario - from dashboards to detail views.

Statistical panel widgets

Flexible data cards

Cards follow consistent spacing tokens and structure, adapting to any data type - numbers, charts, or progress indicators. Components remain clean and readable at any size, making metrics easy to compare and visually

Data card variations

Menu

The structure adapts to the context - from simple dropdowns to complex multi-level navigation — keeping actions clear, accessible, and easy to scan.

Menu components

Flexible and scalable

Menus support icons, labels, shortcuts, and nested groups. The layout adapts to different levels of complexity and content density, preserving clarity and effortless navigation. Consistent spacing and typography maintain a clean structure across all variations.

Menu variations Nested menu structures

Calendar

A flexible date-selection system with multiple presets, ranges, and shortcuts. Components stay clear and responsive on any layout, making scheduling fast and effortless.

Calendar components

Calendar interactions stay intuitive

Calendars support multiple selection modes, shortcuts, and uick-range presets. Components adapt to different layouts and remain readable at any scale, helping users pick dates faster without breaking their flow.

Calendar selection modes

File uploader

File uploader enables quick and intuitive file submission with real-time feedback. The component adapts to different states — uploading, success, or error — while keeping the interface clean and predictable.

File uploader drop zone

Upload states

Clear visual states (uploading, success, error) help users understand progress instantly. Layout and spacing adapt depending on the number of files, ensuring readability and control at every step.

File upload states

Build pages effortlessly

With a rich library of reusable components and consistent design rules, pages can be assembled in minutes - simply combine blocks, adjust content, and you're ready to ship. No extra styling or manual alignment required.

Pages assembled with Citric Design System components

More projects

View all