Skip to content
Finalist

PLQHeroes

An open-source interactive television application designed to transform passive screen time into an active educational experience.

Core trick

Pairs parent-curated video with timed in-stream quizzes and activities synced in real time through Supabase.

Tags

Description

An open-source interactive television application designed to transform passive screen time into an active educational experience. By seamlessly blending parent-curated video content with real-time activities and quizzes, KangarooTV ensures that children aren't just watching—they’re participating.
tijoseymathew/KangarooTV★ 00 forksTypeScriptCreated Mar 7, 2026 · last push Mar 7, 2026

README excerpt

# 🦘 KangarooTV

The Interactive "Leap-and-Learn" Streaming Platform for Kids

KangarooTV is an open-source interactive television application designed to transform passive screen time into an active educational experience. By seamlessly blending parent-curated video content with real-time activities and quizzes, KangarooTV ensures that children aren't just watching—they’re participating.

## Tech Stack

- **React 18** - Modern React with hooks and Context API
- **TypeScript** - Type-safe JavaScript
- **Vite** - Fast build tool and dev server
- **Tailwind CSS** - Utility-first CSS framework
- **shadcn/ui** - Re-usable component utilities (cn helper)
- **Supabase** - Authentication, database, and real-time features
- **React Router** - Client-side routing

## Features

- 📚 Activity library browser
- 🎥 YouTube and local video support
- 🎤 Text-to-speech with customizable voices
- 📝 CSV-based activity imports
- 🏃 Workout timers
- 🧠 Multiple choice questions
- ⚡ Flash cards
- ⏱️ Time limits and penalties
- 🎯 Score tracking

## Getting Started

### Prerequisites

- Node.js (v18 or higher recommended)
- npm or yarn

### Quick Start

1. **Install dependencies**
   ```bash
   npm install
   ```

2. **Set up Supabase**

   Follow the detailed instructions in [setup.md](./setup.md) to:
   - Create a Supabase project
   - Set up the database schema
   - Configure authentication providers
   - Get your API credentials

3. **Configure environment variables**
   ```bash
   cp .env.example .e

Team