Concept Archetype build · 03

The vibe-coded SaaS screen,
compiled into a product.

Every AI-built app has the same tells: a gradient hero, status chips in three shapes, numbers too small to read. So we built the archetype — a made-up freelancer invoicing app called Tally — and recompiled it into a real product screen: one palette, one type scale, one status system, the number that matters first.

Tally isn’t a real product — it’s a concept we built end to end to show the method on a full app screen, not just a landing page.

before · vibe-codedafter · compiled
Tally
Get paid faster with AI-powered invoices
Balance
$3,240
Acme CoInvoice #014
$1,200Paid
GlobexInvoice #013
$840Overdue
InitechInvoice #012
$1,200Draft
+ New invoice
TTally
Outstanding
$3,240
across 3 invoices
Acme CoPaid Jul 12
$1,200
GlobexOverdue 4 days
$840
InitechDraft
$1,200
New invoice
App home

The number first, the system throughout.

Drag the toggle. The gradient gives way to the balance you actually opened the app for, the three clashing status chips collapse into one dot-and-label system, and the type finds a single readable scale.

  1. 1Lead with the outstanding balance
  2. 2One status system (dot + label)
  3. 3Readable type scale, no 9px numbers
  4. 4One accent, one surface, calm palette
  5. 5One primary action, not a floating pill
The deliverable a system, not a screen

One screen looks nicer. The system scales.

Palette · tokens
ink#14171F
accent#17845A
surface#FFFFFF
paper#F7F6F2
muted#6B6F76
line#E6E4DD
Type · one scale
Display30 / 600
$3,240
Body12 / 500
Acme Co · Paid Jul 12
Label10 / mono · caps
OUTSTANDING
Status · one system
Paid
Overdue
Draft

The old screen used three chip colors in 3 different radii. One dot + one label reads instantly.

The tells what makes it look AI-built
01

A gradient hero, hiding the number

The thing a freelancer opens this app for — how much am I owed — sits below a full-bleed gradient and a marketing headline. The balance should be the first and biggest thing on the screen.

02

Status chips with no system

Paid, Overdue and Draft each got their own colour and their own corner radius (4px, 12px, a full pill). You can’t scan the list; every row asks to be re-read.

03

Financial data at 9px

Invoice numbers and metadata render around 9px. On a money app, unreadable numbers don’t just look cheap — they make people distrust the totals.

Your product deserves a system, not a template.

We do this for real — brand identity plus a production-grade React frontend, compiled from your taste. New builds or rescues.