A self-contained spaced-repetition substrate for children, embedded as a zone in the Mochi virtual pet. Cards are generated and consolidated in the background; the deck unfolds along the child's interests rather than following a fixed curriculum.
Working name — primer, after the Young Lady's Illustrated Primer (Diamond Age): an adaptive book that teaches a child and grows with her. Rename freely.
- Anki / spaced repetition — the retention engine (Leitner boxes).
- Quantum Country — cards as a mnemonic medium. Generation emits small learning units (a teach card + its tests), not bare flashcards.
- Diamond Age primer — adaptive, child-directed, grows with the learner.
- Substrate thesis — one shared card state; independent self-activating components (scheduler, curriculum, cards) observe it and act at their own tempo. Coordination is stigmergic, through the shared coordinate space, not message-passing.
- Two readers, 6 and 8. One shared tree; each climbs to her own depth, gated by her own mastery. State partitioned per child.
- Form factor: the Mochi device — ESP32 + ePaper. Monochrome, slow refresh, a few buttons, audio in/out. Text-centric: written question, text reveal, graded by button. Content gravitates to text-symbolic domains — arithmetic, spelling, vocabulary, factual recall.
- Child picks a profile, then taps down through the knowledge map — a recursive 2×2 partition of quadrants; tap a branch to descend, a leaf to study. The path she taps into is her interest window.
- Device fetches one session batch of due cards for that leaf over a bearer-token API.
- Per card: attempt → reveal → grade (got it / almost / didn't know). Graded offline, on-device.
- Device posts all grades back in one request at session end.
- The server consolidates: updates Leitner boxes, generates cards on mastered leaves, and subdivides a leaf into four sub-quadrants once it is full and mastered — so the tree deepens where she has learned most.
Adaptation lands one session later by design — stable within a session, adaptive between them.
Working prototype. Built: device simulator (/), the two-call review API, Leitner review, card generation + structural subdivision, an admin dashboard (/admin), and a resumable speed-run simulator. Generation runs on demand / via the simulator; the background cron is wired but inert until trusted.
SPEC.md holds the design — start with its §0 (Status / as-built), which records what is actually built, where it diverged, and the bugs-turned-invariants found along the way.