W
A golden retriever sitting in a Somerset meadow at sunset

Willowbrook Goldens & Ragdolls · Proof of concept

A breeding platform, split three ways.

“An app for dog and cat breeders” is really three products, with three different users on three different devices. Each one is prototyped where it actually gets used.

The argument

One app would have made all three worse.

The breeder in a whelping room, the buyer scrolling Instagram, and the same breeder doing paperwork at the kitchen table are not one user with one problem. Forcing them into a single interface means every screen is a compromise. So we split it — and let each part be excellent at one thing.

Shared spine
One data model with a species field. Not two apps.
Constraint
Web only. No Expo, no Tauri, no app store.
Status
Clickable prototypes, real demo data, 20 Jul 2026.

A phone in a barn

One hand free, poor signal, gloves on. Husbandry is the only one that is genuinely an app.

A link in a bio

Buyers arrive from Instagram and Google. Nobody installs an app to browse puppies.

A laptop at the kitchen table

Wide tables, drag-reorder, contracts. Cramming this into a phone is the classic mistake.

Three prototypes

Open any one

01 Mobile · installable PWA

Record-keeping & husbandry

Daily weights, health records, heat cycles and litter logs. Built for one hand, poor signal, and a breeder who is already holding a puppy.

Today Litter detail Animal profile

Monday 20 July

Today

Urgent
A twelve-day-old golden retriever puppy

Weigh-ins, photos and treatments logged at the whelping box.

Bella, a golden retriever dam
02 Web · mobile-first

Public shopfront

Where buyers land from Instagram. A shareable, indexable URL — plus the application form that feeds the pipeline.

7 pups · 3 available
Home Available now Enquire
03 Web app · desktop

Sales pipeline

Applications, deposits, pick order and contracts. Drag a buyer between stages; the allocation updates live.

2
1
3
Board Waitlist Buyer detail

The moment that sells it

Yellow collar is losing weight.

Day 12 of Bella’s litter. Six puppies are gaining as expected. Yellow has dropped 15 g since yesterday — the first sign of a fading puppy, and exactly the thing a paper chart catches days too late.

All three products already know. The app flags her on the Today screen, the shopfront still lists her as available rather than reserved, and the pipeline shows she is promised to nobody. That is what one shared data model buys you.

Open the litter screen

Willowbrook B Litter

Day 12 · whelped 8 July · Bella × Cooper

1 flag

Yellow · female

Supplemental feeding started

870g

−15 g

Red · female

Available

1010g

+34 g

Blue · male

Reserved · Sarah Chen

985g

+31 g

Preview · four more puppies in the app

Same data, three surfaces

Five breeding animals, shared across every screen

Dogs and cats differ in gestation, heat cycles, registries and health panels — but not in structure. One schema, one species field, two very different calendars.

Emma Hartley in her garden

The persona

Emma Hartley

Somerset. Golden Retrievers and Ragdolls, roughly three litters a year. Currently runs it on a whiteboard, a spreadsheet and WhatsApp — which is the real competitor.

Stack

Static HTML + Tailwind today. Next.js on Vercel with Postgres when it becomes real — installable PWA, no Expo, no Tauri, no app store review.

Known constraint

Push notifications on iOS only fire if the site is installed to the home screen. If “remind me the vaccine is due” is core, that shapes onboarding — worth naming early.

Open question

Is this Emma’s own operation, or a product sold to other breeders? Single-tenant is weeks. Multi-tenant means billing, subdomains and a templated shopfront — a different order of size.

What’s real here

Every screen is clickable with consistent demo data. Drag-and-drop, filtering and form validation all work. Nothing is wired to a database yet.