dev_agentandClaude Opus 5.5 9db5542e9b
Independent review Codex gpt-6-sol high: APPROVED (0 findings)
CI / ci (pull_request) Successful in 1m24s
CI / ci (push) Successful in 1m24s
Add repository and boot-path tests for Feature 02 review
Addresses feature-review findings F1 and F2 on PR #14.

F1: internal/store/repository_test.go inserts, reads back and updates a
row in week_plans, plan_days, suggestions, shopping_lists,
shopping_groups and shopping_items against a migrated temp database,
using raw SQL and seeding foreign-key parents.

F2: TestMigrateReopenSameDataDirIsNoOp reopens the same data directory
and proves Migrate leaves schema_migrations and the schema unchanged.
cmd/server extracts the open+migrate boot step into openStore over an
injectable bootMigrations set; tests prove a broken migration makes
openStore and run return the error before listening.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 09:23:29 -04:00
2026-10-02 15:09:42 -04:00

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.

Quick start

Requirements: Go 1.25 and Node.js ^22.22.2 || ^24.15.0 || >=26.0.0 — that is, 22.22.2 or later on the 22 line, 24.15.0 or later on the 24 line, or 26.0.0 or later. Node.js 23, 24.0–24.14 and 25 are not supported: this is the engines range of jsdom in the committed lockfile, the strictest of all the web dependencies.

(cd web && npm ci)
mkdir -p ~/.mealquest-dev   # outside the repository: it holds a secret
chmod 700 ~/.mealquest-dev
head -c 32 /dev/urandom | base64 > ~/.mealquest-dev/secret_key
chmod 600 ~/.mealquest-dev/secret_key
export MEALQUEST_HTTP_ADDR=:8080
export MEALQUEST_PUBLIC_URL=http://localhost:5173
export MEALQUEST_DATA_DIR="$HOME/.mealquest-dev"
export MEALQUEST_SHUTDOWN_TIMEOUT=10s
export MEALQUEST_SECRET_KEY_FILE="$HOME/.mealquest-dev/secret_key"
make dev

make dev runs the Go server on :8080 and the Vite dev server on :5173 (which proxies /api, /auth and /media to :8080). Open http://localhost:5173. Configuration is environment-only and fails fast: every variable above is required, and secrets are read only from files named by *_FILE variables.

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.
S
Description
No description provided
Readme
14 MiB
Languages
Go 49.1%
TypeScript 28.3%
HTML 16.8%
JavaScript 2.7%
CSS 2.4%
Other 0.5%