Add to this week opens a sheet of the household's current week (or next
week by the toggle), Monday to Sunday in the household timezone, each day
with its current dinner. Choosing a day swaps the dinner in through the
Plan's own useSwapDay (PUT /api/v1/plans/{weekStart}/days/{date}); the
screen then says it is being added, added, or why not with Retry, and the
week's plan query is invalidated once added. A week with no plan offers
"Draft this week first", linking to /plan. A dinner already on the week
cannot be added again.
The heart toggles is_favorite through the existing useToggleFavorite,
which now also updates the detail cache optimistically, rolls it back on
failure, and takes only is_favorite from the list-shaped answer so the
detail keeps its recipe. It exposes aria-pressed; a failure shows the
error with Retry.
useSwapDay now also reports its latest swap when it succeeded.
Maestro task 07423ba7-9f91-4ec5-8ab8-1fb92e3c7d2e.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
MealQuest
MealQuest is a mobile-first Progressive Web App for weekly dinner planning for one household. The household lists the dinners it makes regularly, an AI assistant suggests new dinners to try (swipe "Try it" or "Pass"), and the app builds a weekly plan, pushes it to Google Calendar, and generates a shopping list grouped by dinner, kept as a browsable weekly history. It ships as a single Go service with the React PWA embedded in the binary.
Status: this repository is the Feature 01 scaffold (Go service with
/health, embedded PWA skeleton, Makefile, Dockerfile, CI). The planned application is described in docs/ARCHITECTURE.md.
Running it locally
The developer setup (prerequisites, Authentik and Google clients, the
MEALQUEST_* environment, make dev and the optional SearXNG sidecar) is
runbook information and lives in CTXD: project mealquest, file
RUNBOOKS.MD, section "Local development". Configuration is read only from
the environment, and the service refuses to start, naming every missing or
invalid variable.
Common commands
| Command | What it does |
|---|---|
make dev |
Go server plus Vite dev server. |
make test |
gofmt check, go vet, go test -race, web typecheck and tests. |
make build |
Build the PWA, embed it, build the static binary bin/mealquest. |
make docker |
Build the container image from the root Dockerfile. |
Where to read next
- AGENTS.md — house rules, approved dependencies, the quality floor every change must pass, repository layout, conventions.
- docs/ARCHITECTURE.md — architecture of record.
- design/MealQuest Requirements.md — product requirements.
- design/MealQuest UI Designs/design_handoff_mealquest/README.md — UI handoff.