Designed an iOS 26 'Liquid Glass' design system and a canonical component inventory enforced by lint rules to prevent UI divergence.
Design Systems Engineer
Situation. A UI without a shared visual language and a fixed set of components drifts, and it drifts fast. Every new screen reinvents its own buttons and badges and cards, each a little different, and those small inconsistencies pile up until the product looks incoherent and every change means touching five bespoke versions of the same thing.
Task. The design system had to be coherent enough to look deliberate, and enforceable enough that it wouldn’t erode the moment the team was busy.
Action. The visual language and the component system were designed as one thing. The language is an iOS 26 “Liquid Glass” look — translucent panels with backdrop blur, layered shadows, a bit of refraction, spring animations — built out of Tailwind utilities. On top of it sits a canonical set of components every screen is supposed to compose from: Card, Label, Button, GlassIconButton, DirectoryGrid and the rest. The part that makes it stick is the linting: rules that reject a hand‑rolled badge or chip and point you at the canonical component instead, so the system is held up by tooling rather than by whoever’s reviewing that day remembering to care. And the docs are paired with concrete mistake‑to‑resolution notes, so the guidance is “here’s the wrong way and the right way,” not an abstract principle.
Result. The UI stays consistent and on‑brand, and the one‑off components that would otherwise spread get caught before they do. Visual consistency stopped being a matter of everyone’s discipline and became something the tooling holds the line on, which is the only version of it that survives a deadline.