Particle
design system
Vcheck had three teams answering the same design questions separately, with nothing shared to check against. I started by cataloguing every screen and every place the product disagreed with itself, then turned that record into Particle, the design system all three teams now build from. New features take 40% less design time, and engineering ships twice as fast.
Three teams, three products, one company
Each team at Vcheck was shipping its own product in its own visual language. A dropdown designed in March would be designed again in June by someone else, solving the same problem without knowing it had already been solved.
Nothing underneath was shared. States were missing, names followed no convention, and there was no documentation to point to. Engineers read each spec their own way, and designers drew the same components again for every new feature.
I counted before I drew
The audit came first: every screen, every component, every pattern, logged with where it had been duplicated and where two versions disagreed. It turned out worse than anyone expected.
Then I sat with engineers to find the exact places they were guessing, and studied how IBM, Atlassian and Microsoft had solved the same problems, to set a bar for what Particle had to reach.
Decisions made before the first component
Every component started as a written API: props, variants and states, agreed with engineering before any pixels. When something could not be built as specified, the spec changed, not the expectation.
Usage guidance, naming standards, examples and accessibility specs shipped with each component, held to the same bar as the component itself.
The system could not be mandated into use. I rolled it out one product area at a time, held weekly office hours, and treated every question as a sign that something needed to be clearer.
Four layers on one foundation
60+ components and 200+ variants. Different products, one shared foundation.
Work got faster because nobody had to guess
Stopped redrawing and started composing screens from parts that already existed.
Stopped interpreting specs and started building from one agreed definition.
Stopped catching inconsistencies that should never have reached them.


















{{ ecAnim }}



















