Reservoir bridge, 7:42pm. Wind was wild today.
The app could do everything and explain none of it.
Napoz let anyone start a challenge — a 30-day writing streak, a neighborhood step competition, a sourdough showdown — all living in one community.
The product had evolved feature by feature, challenge by challenge.
It worked.
But it could do everything and explain none of it.
Every screen had improvised its own dialect — different colors, different buttons, different words for the same thing. New users couldn't tell a post from a challenge. The product lacked a shared language.
The evidence was sitting in the support queue:
"I don't know what I'm looking at."
This wasn't a visual-polish problem. It was a comprehension problem.
So I didn't start with screens.
I started with the smallest unit: design tokens, then components, then patterns, then the words themselves.
The obvious fix was to reskin the loudest screens and ship. I refused it. A reskin would have painted over the inconsistency, not removed it. Six button styles would still be six button styles under one coat of color.
Instead, I established one visual language, one component system, and one vocabulary for the product.
The redesign people see is the surface.
The system underneath is the actual work.
Now a first-time user opens Napoz and immediately understands what they're looking at.









