Last updated: 2026-03-21 16:48 CET
This file is the shared high-level state for humans and coding agents.
Before starting work:
- Pull
main - Read this file
- Check the GitHub project board
After anything lands on main:
- Update this file
- Keep the summary high-level
- Record architecture or scope changes that others need before they code
For the Saturday, March 21, 2026 demo, lock scope to a single polished readiness loop:
- learner pastes lesson notes
- learner chooses
3-minute Warmupor1-minute Rush - app runs a short voice recap
- app returns a
Lesson Readiness Score - app shows a compact Tutor Brief
Do not expand scope unless the core loop is stable and rehearsed.
Relay is the "previously on..." layer between Preply lessons.
It helps the learner show up ready and helps the tutor skip the slow recap.
- Next.js app on Vercel
- Turborepo workspace with the app in
apps/web - Agora for realtime voice session handling
- OpenAI for extraction, warmup generation, grading, and summary outputs
- Recharts for the small KPI layer
feat/student-dashboard-screenmerged tomainwith student readiness dashboard UI and shared UI primitives.feat/teacher-dashboard-screenmerged tomainwith tutor-facing dashboard UI, conflict-resolved against shared button/package updates.origin/feat/screen-1-v3merged tomainwith Relay session UI components and route assets.feat/integrate-agora-supabasemerged tomainwith Agora/Supabase session plumbing, dashboard route split (/dashboard/student/*,/dashboard/teacher/*), and webhook/status API routes.- Root route
/now serves the session experience previously under/session. pnpm validatepasses onmainafter the latest merge.
- Lane 1: platform, repo setup, env, Vercel deploy, API route plumbing
- Lane 2: extraction, grading, scoring, Tutor Brief generation
- Lane 3: Agora session bootstrap, browser voice flow, session reliability
- Lane 4: setup page, session UI, dashboard, Tutor Brief presentation
Keep ownership separate by file and module where possible.
#1Lane 1: bootstrap app, envs, and Vercel deploy#8Lane 2: extraction, warmup generation, and grading contract#7Lane 3: Agora voice session and browser session loop#5Lane 4: setup screen and live session UI shell#6Lane 4: readiness dashboard and Tutor Brief card#2Cross-cutting: update this file after each merge tomain#3Cross-cutting: demo hardening, fallbacks, and backup assets#4Stretch: one extra wow layer only if the core loop is already stable
- Prefer separate files over shared hotspots.
- Merge small, working slices instead of large perfect branches.
- If a change affects architecture, prompts, or contracts, update this file after merge.
- If you start from stale context, stop, pull, and re-read this file first.
- Coding agents should read the kanban and this file before they start writing code.
- Use
pnpm validateas the shared verification gate before handoff.
- 10:30 CET: scope locked, app scaffolded, Vercel stub live
- 11:30 CET: notes to session-start flow works
- 12:30 CET: full warmup run works once end to end
- 13:30 CET: readiness score and Tutor Brief render
- 14:30 CET: real outputs and polished hero flow
- 15:15 CET: fallbacks and backup assets ready
- 16:00 CET: demo-ready freeze
- avatar layer
- extra emotional/confidence signal
- deeper spaced repetition logic
- AWS integrations beyond what is required for the happy path