Campbell Davis

Case Study — Vibe-to-Production

Shipping a Production Web App in Four Days

The Simple Gift Registry homepage, showing its gift icon, tagline and sign-up buttons

4 days

first commit to live product

18

user stories written before code

55

scenarios run in a real browser

The situation

Simple Gift Registry is my own product: a straightforward tool to build and share gift registries without unnecessary feature bloat or affiliate marketing. It was also a deliberate test of the workflow I recommend to clients. AI can write an enormous amount of code very quickly — the open question is what has to sit around it so that speed produces something you can actually run in production.

The approach

Every feature went through the same three steps:

  • A short user story in plain language: who wants what, why, and how will we know when we’re done?
  • A functional test per criterion, written in Given/When/Then so it reads as a business requirement rather than a technical assertion.
  • Only then, just enough application code to make the scenario pass.

Lint, type checks, dead-code detection, a production build and the full scenario suite run on every pull request, so a change that quietly breaks a previously agreed behaviour can’t reach the main branch.

Why the order matters

Writing the acceptance criteria first gives AI a target that isn’t “something that looks right”, and it gives me a check that doesn’t depend on reading every generated line of code. Because the scenarios describe behaviour rather than implementation, they survived several rounds of refactoring. The code underneath changed repeatedly while the definition of correct stayed put.

That’s the gap the Health Check most often finds in AI-built prototypes: plenty of unit tests asserting that the code does what the code does, and nothing capturing what the business actually asked for.

Hardening before launch

Working software and production-ready software are not the same thing, so the last pass before launch was a deliberate one, treating the app the way a health check would:

  • Access checks on every route and every action, not just the pages — so knowing an internal ID isn’t a back door into someone else’s data.
  • A rotatable share link plus an optional password, arranged so that changing either one immediately cuts off everyone holding the old one.
  • Limits on how much any one account can create, and validation of every user-supplied identifier before it reaches the database.
  • Security headers, private pages excluded from search engines, and confirmed “delete my data and my account” functions available to users.

The outcome

A live product, currently in beta, at simplegiftregistry.com.au, built and hardened in four days. The full source, stories and scenarios are public.

AI didn’t make the engineering discipline unnecessary. It made it fast enough to apply to every single feature, which is the point of the Vibe-to-Production offering: the same speed, with the parts that make software safe to depend on left in.

Want your prototype built to this standard?

Vibe-to-Production takes what you've already got and closes the gaps a prototype leaves open.

Start a conversation