Case Study
How I rebuilt Candidly's design system from raw HEX colors into a two-level semantic token architecture.

TL;DR
I redesigned Candidly's design system from raw HEX values into a two-level semantic token architecture. This unified design and code, removed over 1,000 hard-coded color references, improved accessibility, and prepared the system for AI-driven automation and multi-brand scalability.
.png)
The Challenge
When I joined Candidly, our design system relied on raw HEX values and inconsistent naming — things like candidly/blue or gray/medium.
The Goal
I set out to design a token framework that would:
The Approach
With limited resources, I kept it lean but strategic. I studied token frameworks from Adobe, Atlassian, and Tailwind, extracting the best parts to build our own two-tier model:
For example, background tokens are only available for frames, border tokens for strokes, etc. This made the system clear, usable, and harder to misuse.
Link to raw HEX values
Tokens describe its functional intent, each part name its usage.
Team Rollout
We rolled out the tokens step by step, running naming workshops and usability exercises with designers and developers. Weekly syncs helped refine semantics for states like danger, success, and info.
Continuously weekly sessions with designers and developers to refine naming convention and usage until everything felt natural and standardized.
Each new layer built toward a flexible, scalable foundation that the entire team could leverage.
Impact
Removed over 1,000 primitive references from code
Achieved AA (4.5:1) and 3:1 contrast ratios across UI

Reflection
By connecting Figma and code through semantic structure, we transformed our design system into an adaptable, evolving ecosystem. This project didn’t just improve efficiency, it became the foundation for how we now design, scale, and explore automation at Candidly.
BACK TO HOME