Dinner + Tinder
The idea came fast. What if picking meals for the week felt less like a chore and more like scrolling through a dating app? You see something, you swipe. Yes. No. Next. Two people, one app, swipe through meal ideas until you’ve got a week’s worth of dinners, then let the app figure out the grocery list. I called it Dinder. Dinner meets Tinder.
Why Now
Before AI-assisted development, I couldn’t have built this. A full-stack PWA with authentication, a third-party recipe API, real-time ingredient aggregation, and a shopping list that syncs across devices was always a team effort, or it required engineering depth I didn’t have.
AI changed the math. Not because it replaced the thinking, but because it extended what one person with the right thinking could actually ship. I wanted to prove that, and I wanted to walk away with something real to show for it.
Locking Decisions First
Before writing a single line of spec, I ran a structured Q&A process with Claude to lock every product decision. Not wireframes. Not a backlog. Just questions and answers, one decision at a time.
How do two people share the account? What happens when a meal gets dismissed permanently, is that per-user or per-household? When the swipe deck runs out, does it loop or reset? How smart does ingredient combining need to be? Should half a cup of chicken broth from one recipe and two cups from another combine into a single line item on the shopping list?
That process surfaced decisions that would have caused rework mid-build if I’d skipped them. By the time I started writing specifications, the product was already fully defined. The briefs were documenting decisions, not making them.
The Capability Brief
I wrote eight Capability Briefs, structured markdown files that served as the single source of truth for every feature in the app. Each brief covered the problem, the intended outcome, functional rules, edge cases, constraints, and a section written specifically for Claude Code to consume.
AI coding tools are only as good as what you hand them. Feed a vague user story to an AI and you’ll get vague code back. The Capability Brief format was my answer to that problem, structured, explicit, unambiguous. Written for a collaborator that reads everything literally and builds exactly what you describe. Not “users can filter by dietary restrictions,” but exactly which restrictions, how they get passed to the Spoonacular API, what happens when no results come back, and what’s explicitly out of scope. That last part, the not-in-scope list, turned out to be just as important as the feature list. AI builds confidently in whatever direction you point it. A clear boundary is as valuable as a clear requirement.