I'm Halo — a product designer who ships the front-end too. I design the system in Figma, then build it in React and motion so nothing gets lost in the handoff. Twelve years between an editor and a design tool.
Each one designed and built end-to-end. The numbers are real engagements, renamed.
Redesigned account-opening from 11 screens to 4. Built the whole flow in React with a 60fps progress motion that tracks scroll. Activation climbed from 41% to 75% in the first cohort.
A token pipeline that syncs Figma variables to CSS in CI. 240 tokens, one source of truth.
A consumer app that hit #3 in Weather. I owned brand, UI, and the chart engine.
Took a dense BI dashboard from 9 charts per screen to a focused, scannable three.
Triage that groups by sender intent. Median time-to-zero dropped to 6 minutes.
An 11-year-old internal tool used by 1,800 dispatchers. I shadowed the floor for a week, then rebuilt the live board around keyboard-first interaction. Average dispatch dropped from 94s to 41s.
Most teams hand a Figma file over a wall and hope. I don't. I prototype the hard interactions in real code first, so what's in the design file is already a thing the browser can do — at 60fps, on a mid-range Android, with a screen reader running.
Before going independent I led design systems at two fintechs and spent three years as the only designer at an eight-person startup, where I learned to ship. I write the CSS I spec. I name the tokens I draw. I keep a changelog for my own portfolio.
"Halo gave us a design file the engineers thanked us for. Every spacing value was a token, every motion was already real. We shipped two weeks early."
"We'd been carrying a dashboard nobody could read for years. Halo cut it to three charts and dispatch time nearly halved. Rare to find a designer who can also defend the code."
"The onboarding redesign paid for itself in a month. What I remember most is the motion — it made a banking flow feel light. People mentioned it unprompted in interviews."
Fixed scope, no surprise invoices. I take one project at a time so yours gets all of me.
A clear-eyed teardown of your product with a prioritized fix list you can act on without me.
One focused flow, taken from research to a production-ready, accessible React build you own.
An embedded design-engineer for teams between hires. I join your standups and ship in your repo.
If yours isn't here, it's a good first message to send.
I write it. On a Sprint or Partner engagement I push to your repo, open PRs, and review against the running build. The Figma file is the spec; the merged React is the deliverable. I match your stack — most teams are on React + Tailwind or CSS modules.
Figma Variables are the source. I export them through a small CI step that writes CSS custom properties and a TypeScript theme object, so a color changed in Figma lands in the build on the next push — no one hand-copies a hex. That's the Lattice case study, in short.
WCAG 2.2 AA as the floor: keyboard paths, visible focus, 4.5:1 contrast, reduced-motion variants, and a real screen-reader pass with VoiceOver and NVDA. It doesn't slow me down because it's baked into the component from the first commit, not bolted on at the end.
Usually that's the better call. I'll learn your primitives, contribute components back in your conventions, and flag the three or four places where the system is fighting you. I'd rather strengthen what you have than leave you a second system to maintain.
Because context-switching is where the details die, and details are the whole pitch. One client means I hold the full mental model and can move fast without re-reading my own notes. It's why 73% of clients come back rather than re-explain everything to someone new.
Tell me what you're building and where it's stuck. I reply to every serious message within a day, usually with a first instinct already sketched.