Work
Not just interfaces...
My work sits before the interface exists.
At the point where product decisions harden into systems.
I step in early — when structure is still fluid — and help teams define what will scale and what will break later.
This is not about screens.
It's about what survives them: tokens, component logic, and the semantic layer that outlives any framework.
"I design systems that survive change."
-
Product systems and foundational layers.
-
Design systems as operational infrastructure.
-
Interfaces for high-complexity environments.
-
Human-centered AI and developer-facing tools.
Projects
Intent Compiler
Deterministic Output · Protocol Layer
I kept seeing the same failure mode: a well-written spec that gets interpreted differently at every handoff.
So I built something that removes interpretation from the equation.
Intent Compiler takes human intent and turns it into deterministic technical artifacts — code that is a faithful execution of what was actually specified, not someone's best guess at it.
HTML–MD Sync
State Synchronization · Documentation Integrity · Audit Layer
Documentation lies — not intentionally, but inevitably.
The Markdown says one thing, the production HTML says another, and nobody catches it until it matters.
I built HTML–MD Sync to enforce bi-directional consistency between the two. What's documented is what exists. No drift, no silent divergence.
Box Model Sentinel
VS Code Extension · CSS Analysis · Responsive Tool
Responsive issues don't announce themselves during development.
They show up in the demo, on a screen size nobody tested, in a container nobody anticipated.
Box Model Sentinel is a VS Code extension I wrote to surface those issues early — hidden fixed values, rigid containers, silent overflow — before they become someone else's bug report.
Underlith
Design Tokens · Semantic Layer · Source of Truth
Most token systems are tightly coupled to the stack they were built for.
When the stack changes — and it will — the tokens become technical debt.
Underlith is my attempt at a semantic layer that sits between intent and implementation, built to survive migrations, rewrites, and the frameworks that don't exist yet.
OfferEye
Palm Pre · Visual Search · Price Comparison
OfferEye detected products from photos and compared prices in real time — on a Palm Pre. IBM gave us free Alchemy API access because of the use case. It was one of the first visual search apps for smartphones, roughly eight years before Google Lens made it mainstream.
- Free Alchemy API access for the innovative use case
- One of the first visual search apps for smartphones
- Anticipated the visual commerce trend by 8+ years
- Built for Palm Pre / webOS
Vitrine Responsiva
BuscaPé Affiliate · ML · Adaptive Layout
Vitrine Responsiva was a layout system that adapted to behavior, not just screen size — with a custom ML engine in Java handling recommendations in real time via BuscaPé's API. An embeddable widget that third-party sites could drop in and it would just work.
- Adaptive layout that predates CSS Grid/Flexbox
- Custom ML engine (Java) for recommendations
- Embeddable widget for third-party sites
- Real-time price updates via BuscaPé API
Let's build something that scales.
Available for product systems, architecture, and early-stage definition —
where decisions still shape the system, not just the interface.