Spaces:
Sleeping
Sleeping
Commit History
-
README: add Field Notes blog link (achievement:fieldnotes)
ratandeep +1: Claude Opus 4.8 (1M context)Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>13fbedb -
README: add demo video (YouTube) + social post (X) links
ratandeep +1: Claude Opus 4.8 (1M context)Fills the remaining submission placeholders on the Backyard AI track Space. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>9f31bcd -
Revert to track:backyard (study tutor = Backyard archetype)
Verified signatureea04b2c -
Switch to track:wood (Thousand Token Wood) + retune framing
Verified signature3ddb493 -
Tour: compact uniform tiles, centered content (fix layout)
Verified signature8e42a2e -
Tour: gestures tile + merged tile; fix card spacing/highlight
Verified signature8be8980 -
Pre-render ⓘ tour audio (FIXED_LINES + startup prefetch)
Verified signature1cb9349 -
Add 'What makes Pip special' tour (info button on splash)
Verified signature8ad0aae -
Sync modal_app.py: GGUF (MiniCPM5) served via llama.cpp
Verified signature33aae36 -
Ship 'Today I Learned' certificate + link traces dataset
Verified signaturef814376 -
Add Build Small submission tags + de-stale to fine-tuned MiniCPM5 brain
Verified signature4c2100e -
Redesign a11y pass: WCAG-safe button labels + chip/eyebrow/muted contrast + fuller reduced-motion + polish
ratandeep +1: Claude Opus 4.8 (1M context)Critique fixes: bright buttons use dark navy labels (was white on honey 1.83:1 -> now ink ~7:1, keeps the palette); darker chip/eyebrow/muted text tokens to pass 4.5:1; reduced-motion now also suppresses confetti/sticker-pop/star-pop/card-hover; consistent Fraunces SOFT on all titles; sticker hover + gold page-rims. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>54cb48c -
Redesign: 'A Window of Wonders' — Fraunces/Nunito, dawn-to-dusk palette, Pip's twilight window, storybook cards
ratandeep +1: Claude Opus 4.8 (1M context)Distinctive visual identity: storybook soft-serif display + rounded body, living dawn->dusk sky, the avatar framed in a glowing twilight window with moon/stars/glow, subject-tinted collection cards, refreshed splash/home/lesson/book/earn. CSS + light markup only; lesson engine + autoplay untouched. Reduced-motion + focus-visible respected. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>3f549da -
Fix autoplay state-machine bugs from review (stuck asking, paused-quiz audio, mic leak, token guard)
ratandeep +1: Claude Opus 4.8 (1M context)Pause->Play resume now cancelAsk() (was wedging asking=true -> dead Ask/auto-advance); answerQuiz ignores taps while paused; MediaRecorder setup wrapped so a failure tears down the mic; onAskStop honors the speakToken. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>77f8adf -
Auto-play lesson flow: hands-free auto-advance + tap-to-ask (silence detect) + Pause/Skip
ratandeep +1: Claude Opus 4.8 (1M context)Segments auto-advance after a beat (cancel-safe via speakToken); quiz pauses for the answer. Tap-to-talk Ask (auto-sends on ~1.2s silence) pauses the flow, Pip answers, replays the interrupted line, and resumes. Pause/Play + Skip + Say-again controls. Replaces press-and-hold mic. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>fe48556 -
Add 5 new kids lessons (butterfly, bees, five senses, shapes, magnets) + sticker names
ratandeep +1: Claude Opus 4.8 (1M context)Generated via write->fact-check-and-fix pipeline; each passes pip_core safety+schema. Library now 10 courses; Sticker Book auto-expands to 10 slots. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>7764a9c -
Speed: frontend audio prefetch + in-memory buffer cache (instant per-line playback)
ratandeep +1: Claude Opus 4.8 (1M context)Prefetch+decode all lesson lines at course start and the next line during playback; play from cached AudioBuffer. Hides the ~3.5s gradio/transfer floor that the server cache alone can't remove, so advancing through a lesson is instant. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>9d6b806 -
Speed: cache + pre-record lesson audio (instant playback) + optional KEEP_WARM
ratandeep +1: Claude Opus 4.8 (1M context)/speak results cached by text+voice; startup pre-records all premade lesson lines; make_course pre-records the new lesson's audio in parallel so it plays with no per-line wait. KEEP_WARM=1 pings Modal to avoid cold starts during a demo. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>3799ca8 -
Engagement upgrade: alive Pip celebrations + Sticker Book + Web-Audio SFX (A·C·D)
ratandeep +1: Claude Opus 4.8 (1M context)Confetti + synthesized SFX (ding/sparkle/boop/tada) with mute toggle; per-lesson stickers persisted in localStorage; Sticker Book screen + end-of-lesson 'New Sticker!' earn screen with the 'Today I learned' recap. Frontend-only; no contract/backend changes. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>9d4a18f -
Pre-warm Kokoro G2P pipeline in Modal container (kill first-call /speak spike)
ratandeep +1: Claude Opus 4.8 (1M context)Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>c3fe492 -
Add Modal GPU inference app + MODAL_BASE_URL routing (slice 2)
ratandeep +1: Claude Opus 4.8 (1M context)modal_app.py: one scale-to-zero GPU container (A10) serving /asr+/generate+/speak; LLM+Kokoro on GPU, whisper on CPU, weights baked into image. app.py routes to Modal when MODAL_BASE_URL is set (CPU fallback); safety+orchestration stay in the Space. Modal SDK API validated against current docs. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>aeb5d68 -
Warm only voicing path at startup (don't pin CPU loading the brain)
ratandeep +1: Claude Opus 4.8 (1M context)Brain warmup saturated both free-tier cores for ~1-2 min, starving /speak and looking like a voicing hang. Lazy-load the brain on first use instead. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>a998cf8 -
Fix thread oversubscription on free CPU Space (cap to cgroup quota)
ratandeep +1: Claude Opus 4.8 (1M context)os.cpu_count() reports host cores not the 2-vCPU cgroup limit; running that many torch threads made Kokoro /speak ~50s. Cap OMP/torch/CT2 threads to the real quota. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>df28a69 -
Pre-warm models at startup (kill first-call cold start) + thread-safe lazy loaders
ratandeep +1: Claude Opus 4.8 (1M context)Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>8561fc1 -
Professor Pip — kids learning avatar (courses, make-your-own, safety gate, browser lesson engine)
ratandeep +1: Claude Opus 4.8 (1M context)Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>912d04e -
initial commit
Verified signaturedf56b3f