Off the Shelf: shopping built for the island run
A household shopping companion built for how shopping actually works on Hawaiʻi Island.
Problem
On Hawaiʻi Island, the stores you need sit in different cities, so a shopping day is not one stop but a multi-store "city run" (a Kona run might hit Costco, Target, and Home Depot) followed by a long, hot drive home. Generic list apps ignore all of that. They don't know which store an item is in, which city you're driving to, what survives a hot car, or what the household already tried and disliked.
What it does
- Per-store lists sorted by aisle code, and within a store the heat-safe items group first so perishables are bought last, right before the drive.
- City-run planning: pick a city and get a sequenced multi-store route.
- A purchase memory records what the household tried, liked, and rejected, so an aisle decision becomes "we had this, never again" instead of a guess.
- Two-way in-aisle questions: the shopper snaps a photo and asks, and the person at home can flag an item as photo-requested before it is bought.
- Household members with per-member reactions, staples with one-tap re-add, returns and errands, a "parked" status for the not-yet items, and a paste importer that ingests messy real-world lists.
Who it's for
A two-person household sharing one account, one person shopping while the other adds items and answers questions from home.
How the features came from real lists
The feature set was not invented up front. It was derived from real shopping lists across four documented iterations, each one loading actual data at the destination and letting it decide the structure.
- v1 was a generic scaffold.
- v2 added the real islands and cities, and made a city run, not a single store, the unit of a trip.
- v3 came after ingesting a real Hilo and Target list: household members, aisle-code sorting, staples, returns, and the paste importer.
- v4 came from a real Costco list: shopper instruction notes (brand, "only if not expensive"), the photo-requested flag, and the parked status.
The lesson is the method: structure was designed from real user data, loaded at the destination, never invented. Each list exposed what a generic app was missing, and that became the next round of features.
Built
Off the Shelf is a React 18 and TypeScript progressive web app, built with Vite and Tailwind on a Supabase backend and deployed on Vercel, so it installs to a phone and keeps working in a store on a weak signal. It was product-managed and specified conversationally, built autonomously by Claude Code, then given a distinct cool-violet visual redesign.
Outcome
- Live and in daily household use.
Screens