Customer story · John Pavulon

“What used to take a week took a couple of evenings.

John knew exactly how BarthMoney should feel. OpenDesign gave him production-grade visual ideas in seconds — and a polished, usable interface he could take into code.

In minutes
a cohesive visual direction to start from
60–70%
less UI prototyping time
Within days
to move the core UI direction into Flutter
After hours

Every evening spent nudging margins was an evening the app did not move.

John works in creative direction and visual systems, not software full-time. After his day job, he turns that visual instinct toward practical apps of his own. That makes every hour count.

BarthMoney began with a clear point of view: personal finance should feel calm and immediate. The alternatives John saw were either overgrown spreadsheets or cluttered with ads. He wanted a focused mobile app where logging a daily expense could be quick, clear, and distraction-free.

John knew the interface needed what he calls “a soul.” The wall was turning that direction into a coherent, buildable mobile UI. A blank Figma canvas or a UI written directly in code could consume whole evenings in colors, spacing, and alignment before the product itself had moved at all.

Staring at a blank canvas in Figma or trying to write UI layouts from scratch in code takes forever when you’re working solo after hours.
John Pavulon · solo builder
The first breakthrough

One prompt became a visual language he could build from.

John began with the feeling and purpose of the screen: “a modern dark-mode expense dashboard with category breakdown.” The result was not merely a handsome dashboard. It established dark surfaces, gold accents, money hierarchy, and distinct paths for AI-assisted and direct entry.

Three complete states from the BarthMoney interactive prototype: dashboard, AI-assisted expense confirmation, and offline quick add
Captured from John’s public interactive prototype: dashboard, AI-assisted confirmation, and offline quick add.
The working method

The mockup became a specification he could build from.

John does not ask one agent to invent the product end to end. He gives each tool a clear job, then keeps the product decisions for himself.

01 · IntentDescribe the feeling.

The screen’s purpose, hierarchy, mood, and constraints begin as plain language.

02 · OpenDesignMake it visible.

John refines the generated HTML and CSS until the interface has a coherent direction.

03 · SystemLock the reference.

Components, spacing, colors, and hierarchy become a shared visual specification.

04 · Cursor + FlutterBuild the product.

The structure becomes modular widgets and application logic in John’s codebase.

OpenDesign directs the interfaceJohn directs the product
Workflow reconstructed from John’s written account.
Beyond the polished screen

AI is optional. Confirmation is not.

The strongest part of BarthMoney is not the number of screens. It is the set of decisions connecting them: when automation helps, when it should stay out of the way, and what the product promises before a user has entered anything.

AI-assisted

Suggest, then ask.

The chat recognizes an expense, category, and exchange rate — but the final confirmation remains with the user.

Offline-first

A direct path stays open.

Quick Add works without AI or a cloud account, because speed and privacy matter more than automation theater.

First use

The empty state makes a promise.

Before there is data, BarthMoney explains what stays local and gives one unmistakable first action.

Multi-screen flows and shared state still take more work — exactly the part of the process John wants OpenDesign to make easier next.

What changed

The scarce resource was never ideas. It was uninterrupted time.

John estimates that OpenDesign cut his UI prototyping time by 60–70%. A week of visual tinkering became a couple of evenings, and the core UI direction was ready to move into Flutter within days of the initial concept.

The gain was not simply speed. It gave an after-hours builder enough visual confidence to stop circling the interface and return to the part only he could do: deciding what BarthMoney should become.

BarthMoney was not a one-off. John also used OpenDesign to design the portfolio where the work now lives — another way to turn a visual direction into something concrete.

The verdict
“If you’re a solo developer or indie hacker without a dedicated designer, OpenDesign is your unfair advantage.
— John Pavulon, solo builder · “So you can focus on building and shipping.”
P.S. · Still building after hours
John's local BartX builder showing a cyberpunk landing-page experiment
John captioned it simply: “my side project lol.” BartX, running locally, is another glimpse of the strange, specific interfaces he keeps building after hours.
Your turn

Get the interface out of your head — and into the build.

OpenDesign is free, open-source, and runs on your own machine and your own keys.

OpenDesign Desktop

One design system. Every output unmistakably your brand

Inside the full Vibe Design Workspace, use the same brand rules across websites, slide decks, interactive prototypes, dashboards, images, and HTML video. Connect Codex, Claude Code, Cursor, and other coding agents already on your computer, then create locally for free.

  • Web, slides, prototypes, dashboards, images, and video
  • 140+ design systems, plus the full template and skill library
  • Connect local Codex and 21+ coding agents · Free to use
Download free

Available for macOS and Windows