Sous Chef
A household recipe app that runs on a laptop and is reachable from any phone on the home network. Paste text, a URL or a screenshot; a capture worker hands it to Claude and normalizes it into one house format. Then plan the week, build the groceries, and cook one step at a time.
ASimulated demo
This demo is built for a wider screen. Open it full screen for the best look on a phone.
Import runs a scripted capture rather than a live model call. Recipes, plan and groceries are all made up. No photos are used; tiles stand in for recipe images.
BTry this
Search or filter
Type "tofu" or tap a chip. Search matches on dish name and ingredient; chips combine.
Start cooking
Open any recipe and press Start cooking. One big step at a time, high contrast, made for a phone against the backsplash.
Plan then shop
Add a dinner to an empty day in Plan, then build the groceries. Items are grouped by aisle and check off with an undo.
Run an import
Press Capture on the Import tab and watch the pipeline: fetch, normalize, schema check, dedupe, save.
CWhat it does
Key highlights
- Import from text, a URL or a screenshot. The Python worker strips HTML server-side, calls Claude, and validates the result against a strict recipe schema before anything is saved.
- Search by dish or ingredient with combinable chips. A Discover tab suggests what to cook this week and keeps curated external links in a separate table, never mixed into your collection.
- A weekly plan with slots per day, a grocery list generated from the plan and grouped by aisle, and pantry essentials with restock flags.
- Cooking mode: one step at a time, large type, previous and next, and the recipe is logged as cooked when you finish.
- LAN-only by three independent layers: the bind address, a Windows firewall rule scoped to the subnet, and a host allow-list in middleware. A nightly backup runs as a scheduled task.
How it is built
- AppNext.js 16, React 19
- DataPrisma 7 + SQLite
- Capture workerFastAPI, Anthropic SDK
- StylingTailwind 4, shadcn, Newsreader + Geist
- Interactiondnd-kit, Framer Motion
- ValidationZod, Pydantic
- TestsVitest, Testing Library, pytest
- OpsOne-click launcher, firewall and backup scripts
Design choices
Paper, ink and olive with a serif for titles, so the app reads like a well-kept recipe book rather than a feed. The only outbound connections from the whole system are the model API and, when you paste one, the recipe URL itself.