Case Study — Building an AI-Powered Design Product from Scratch

Klarita came out of recurring frustrations that I noticed throughout my career as a UX and Product Designer. Design teams were diving deep into execution before fully understanding the user problem and finding the right solution.
I've been on projects where design briefs were based on unverified first-person assumptions, where the discovery, research and idea generation was done haphazardly, or where design briefs where skipped because they were viewed as time consuming. By the time a designer opens their tool, the most important decisions — what problem to solve, who to solve it for, what success looks like — have already been made badly, or not made at all.
Most teams treat discovery as an informal step: a few conversations, some sticky notes, maybe a doc that never gets read again. The result is wireframes, comps, or working code built on assumptions, specs that don't reflect research, and handoffs that leave developers guessing.
I'd felt this gap repeatedly across my own work and in observing teams around me. There was no dedicated tool for the messy, ambiguous phase before execution time, and AI made it the right moment to build one.
Klarita is a purpose-built AI assistant that walks designers and PMs through discovery, design specification, and early-stage ideation, before a single visual concept exists.
It guides users through a structured conversation: defining the problem, identifying users, surfacing constraints, and establishing design principles. At the end, it generates a ready-to-share design brief that the whole team can align on.
When the user is ready to build, Klarita provides a bridge to AI-assisted development, generating a CLAUDE.md plan and design system foundations that can be handed directly to Claude Code to begin prototyping.
Discovery doesn't feel like filling out a form. I designed Klarita as a guided conversation, where the AI helps the user think through their answers rather than just transcribing them.
I worked backwards from the artifact: a ready-to-share brief. Every question in the flow earns its place by contributing to a specific section of the output. Nothing is collected that isn't used.
The brief isn't the end, it's the beginning. Klarita generates a CLAUDE.md plan and design system foundations that feed directly into AI-assisted development, closing the gap between discovery and code.
Klarita is built for individual designers and PMs, not just teams. The scope, interaction model, and pricing all reflect that solo practitioners need structure just as much as large teams do.
I ran the full 0→1 process: research, concept exploration, UX design, visual design and generation of production code.
I researched design and discovery processes to fully understand the pre-design phase. From there I moved through rapid concept exploration, sketching multiple approaches to the conversation flow before settling on the structure that balanced guided prompting with user agency. The visual design followed Klarita's own design system, which I built in parallel.
What building a 0→1 AI product taught me about product thinking, design, and shipping.
The quality of what Klarita generates matters more than any feature. I spent ample time refining the brief output and the CLAUDE.md format because that's what users actually take away.
Designing the guided flow required thinking in probabilities. The AI needed to feel helpful regardless of what the user typed. That's a different skillset than traditional UX.
The temptation was to expand Klarita into a full project management or prototyping tool. Holding the line at discovery and brief generation made it shippable and genuinely useful.
Building Klarita solo would have taken months without Claude Code. With it, I could maintain a rapid design-build-test loop that kept the product feeling designed, not just functional.
Klarita exists because I've lived the problem. Great products come from designers who observe pain points and see an opportunity to fix them.
Previous Case Study
← Shaping AI Product VisionNext Case Study
Shipping an iOS App with Claude Code →