Skip to main content

Piggyback Learning

The Problem

Kids today spend hours watching YouTube and while some pick things up naturally, most are just absorbing flashing colors, sounds, and movement without retaining any of it. No comprehension. No language development. No real learning. And parents have little to no insight into what their child is even watching.

The root cause? Passive screen time. Kids sit alone, eyes glazed, while videos play. Without someone asking "wait, what just happened?", nothing sticks.

The Solution

What if kids had a friend watching with them?

Piggyback turns any YouTube video into an interactive learning experience, pausing at key moments to ask questions the child answers out loud, in their own voice. No typing. No multiple choice. Just real comprehension.

And they don't do it alone. They pick a companion:

  • 🐰 Blossom the Bunny : like an older sibling, always pushing you to think harder
  • 🐷 Pippa the Pig : your childhood best friend, warm and always by your side
  • 🐊 Ash the Alligator : the cool uncle, supportive and cheering you on every step

And every session, parents get a real report — what was watched, how their child did, and where they struggled. Finally, a window into their child's screen time.


Who Uses It

RoleWhat They Do
AdminDownloads YouTube videos, extracts frames, generates AI questions
ParentLogs in with a personal login code, reviews questions, manages children, views reports
ChildLogs in with parent's code, picks their profile and companion, watches videos and answers quizzes

How to Run

Requirements: Python 3.12, FFmpeg

# 1. Create and activate virtual environment
python -m venv .venv
source .venv/bin/activate # macOS/Linux
.venv\Scripts\activate # Windows

# 2. Install dependencies
pip install -r requirements.txt

# 3. Set environment variables
cp .env.example .env # macOS/Linux
copy .env.example .env # Windows

# 4. Start the server
uvicorn main:app --reload

# 5. Open the app
# http://localhost:8000

A sample video with questions is included — you can run the kids experience immediately without any API keys.


Default Login Credentials

RoleCredential
Adminpassword: admin123
Parentpersonal login code set by admin

Running Tests

pytest tests/ -v

88 tests across unit, integration, and acceptance. This now includes downloader coverage for protected-video auth, FFmpeg path detection, and invalid MP4 repair. See the Testing section for details.


Key Features

  • YouTube video download and frame extraction pipeline
  • AI question generation (OpenAI, Gemini, or Claude)
  • Interactive quiz player with voice answers — no typing required
  • Animated companion characters that guide and encourage kids
  • Parent dashboard: claim videos, manage children, set access codes
  • Parent report showing per-child quiz scores, retries, and watch time
  • Admin panel for video processing and question management