Skip to content

Goldie's Food Discovery

A voice-first food diary and weaning companion for Goldie, built on the same architecture pattern as Hal's EA system. Hal's wife (Leanne) is the primary user - she records voice notes after meals on her iPhone 12 mini, and the system transcribes, enriches with food discovery intelligence based on Ella's Kitchen's First Foods framework, and serves it as a beautiful mobile-first HTML page she can browse between feeds.

Goldie had her first ever solid food on 14 Feb 2026: blended broccoli with breast milk. The system tracks her entire weaning journey from day one.

Architecture

iPhone 12 mini (Home Screen shortcut → record → upload)
        ↓
Cloudflare Worker (transcribe via Whisper → commit to GitHub)
        ↓
GitHub repo inbox/
        ↓
Hal runs /inbox in Claude Code (daily)
        ↓
Claude Code: process transcript → update diary → update trackers → update HTML content blocks
        ↓
Cloudflare Pages auto-deploys site/index.html
        ↓
Leanne browses on her phone (bookmarked Home Screen link)

Key decisions: - Separate repo from hal-ea (different system, different CLAUDE.md, different user) - Separate Cloudflare Worker from EA system (no cross-contamination during development) - Hal runs /inbox manually once a day - no automation until friction proves it necessary - Claude Code does all enrichment - no additional API costs, full intelligence

Repo Structure

goldie-food/
├── CLAUDE.md
├── learnings.md
├── inbox/
├── diary/
│   └── 2026-02-14.md              # one file per day
├── tracker/
│   ├── foods.md                    # master food list with dates, reactions
│   └── allergens.md                # 14 UK allergens introduction tracker
├── site/
│   └── index.html                  # content-block template, design stays fixed
└── .claude/
    └── commands/
        └── inbox.md

No manifest file. The tracker files serve as the summary layer - Claude Code reads foods.md and allergens.md to understand where Goldie is in her journey.

HTML Design

A single beautiful, mobile-first HTML page. The page is designed once and the design never changes - Claude Code only updates content within marked blocks on each /inbox run.

Content blocks (marked with HTML comments): - next-suggestion (top, most prominent) - what to try at the next meal and why - recent-meals - last few days as a timeline, each with food, reaction, notes - allergen-tracker - visual grid of the 14 UK allergens (introduced/upcoming/flagged) - foods-explored - full list of everything tried with reaction indicators

The CLAUDE.md instructs Claude Code to only modify content within <!-- CONTENT:name --> markers. Never touch design, layout, or styling.

Enrichment Model

Based on Ella's Kitchen "The First Foods Book" framework, which Leanne is already following.

Ella's Kitchen stages: 1. First Tastes (from 6 months) - single veg purees, super smooth, veg-first. Green veg emphasised in first 2 weeks. 2. Taking on Texture (from 7 months) - combinations, herbs/spices, thicker textures, finger foods begin. 3. Time to Chew (from 10 months) - proper finger foods, chewing skills, more complex meals. 4. At the Big Table (from 12 months) - family meals, toddler food.

On each /inbox run, Claude Code: 1. Processes transcript into a structured diary entry (date, food, preparation, reaction, amount) 2. Updates tracker/foods.md with any new foods 3. Updates tracker/allergens.md if allergens were introduced 4. Generates a "try next" suggestion based on: - What stage Goldie is in (age-based) - What foods have been covered and what gaps remain - Ella's Kitchen principles (veg-first, rainbow variety, allergen spacing) - Goldie's emerging preferences and reaction patterns 5. Updates HTML content blocks with current data

Key enrichment principles: - Up to 10 exposures before a baby accepts a new food - re-offering "rejected" foods is expected, not failure - Allergens introduced one at a time, 2-3 days between new allergens - Gluten flagged for extra attention (Leanne's mum has undiagnosed gluten intolerance) - ~600ml milk daily alongside solids - Tone: warm, practical, encouraging. For a new mum, not a clinical dashboard - Follow baby's pace, messy is good

Voice Capture (iPhone 12 mini)

No Action Button on iPhone 12 mini. Primary method: - Home Screen icon - Shortcut added to Home Screen via "Add to Home Screen". Looks like a regular app. Tap to start recording, tap stop, notification confirms upload. - Optional upgrade: Back Tap - Accessibility setting, double/triple tap back of phone triggers the Shortcut. Good for "baby in one arm" scenario. Add only if Leanne wants it after using the icon for a week.

The Shortcut: record audio → save locally to iCloud Drive queue (offline safety net) → flush queue to Cloudflare Worker → delete local file on success → show notification.

Family Context

  • Goldie born August 2025, ~6 months old at weaning start
  • First solid food: 14 Feb 2026 (blended broccoli with breast milk)
  • Currently Stage 1: First Tastes (single veg purees)
  • Leanne's mum has undiagnosed gluten intolerance - flag gluten introduction, monitor closely, but no medical restriction
  • No other known family food allergies

What Would Make This a Good V1

  1. Leanne can record a voice note in under 5 seconds (tap icon, speak, tap stop)
  2. Hal runs /inbox, site updates within minutes
  3. Site shows: next meal suggestion, recent meals timeline, allergen progress, foods explored
  4. Allergen tracking visible with gluten flagged
  5. Page is beautiful and easy to read on a phone

Connections

  • EA System Development - shares the entire capture pipeline architecture. Voice → Cloudflare Worker → GitHub → Claude Code → display. Separate infrastructure but same pattern. Building this validates the pattern in a different domain.
EA Reasoning (bootstrap mode) - Promoted to developing. This has moved well beyond seed - we've made all key architectural decisions, chosen the enrichment framework (Ella's Kitchen), resolved open questions (separate repo, separate Worker, manual /inbox, Home Screen icon for capture, HTML content blocks not MkDocs). Ready for a handoff doc to build. - Personal domain is correct. Family project, not commercial, not Gen H. - Connection to EA System Development is the only genuine one. Same pattern, different domain.