Project Overview

DebateLearning is a personal full-stack project that converts dense class PDFs and slide decks into listenable debate episodes, making study material feel more like a conversation than a document you have to force yourself through.

Demo Debate

A saved DebateLearning audio creation generated from course material and preserved for the public showcase.

Process

1

PDF / PPTX

The studio accepts a PDF or slide deck, saves the upload, creates a job record, and starts the FastAPI background pipeline.

2

Extract Information

PPTX files are converted to PDF when needed, then each page is read as text and rendered as an image for multimodal extraction.

3

Create Knowledge Base

The system creates slide-level knowledge, groups slides into batches, and merges both layers into one coherent knowledge document.

4

Retrieve Similar Past Knowledge

The merged knowledge is compared against prior uploaded lessons with pgvector so related material can support the new episode.

5

Create Transcript

The app drafts a debate script, checks each event against the source knowledge, and polishes the language for spoken delivery.

6

Create Audio

F5-TTS turns the polished transcript into speaker-specific clips and combines those clips into one finished episode.

7

Saved Results

The completed job saves the generated knowledge, transcript, and final audio so they can be reviewed or shared later.

Description

DebateLearning is an AI study tool built to transform static course material into more active listening experiences. Instead of leaving a student with only slides, PDFs, and notes to reread, the app generates debate-style podcast episodes where speakers explain, challenge, and reframe the same concepts. The project combines a polished Next.js interface, a private creation studio, a FastAPI generation pipeline, saved audio demos, and deployment-specific configuration so the public site can stay simple while the studio keeps the creation workflow private.

Problem Statement

Course content often piles up as long PDFs, slide decks, and scattered notes. That format works when someone has time to sit down and study, but it becomes harder to use during a busy week. DebateLearning tackles that problem by turning the same material into a guided audio format where ideas are repeated, questioned, and explained from multiple angles. The goal is not to replace reading, but to make review more flexible, memorable, and easier to revisit.

Full Results

The strongest result is a working two-mode product: a public page that can safely show saved audio creations without the backend, and a private studio that still handles uploads, job tracking, transcripts, knowledge artifacts, and generated audio. As more finished episodes are added to the recordings folder, the showcase will continue to grow into a clearer archive of what the system can make.

Title

Demo Debate

Audio file

demo-debate.wav

Prompt type

Debate podcast

Speaker type

AI debate voices

Format

WAV

State

Finished

Technical Skills

Built with Next.js, React, Tailwind CSS, and FastAPI, this project demonstrates full-stack product development, responsive UI design, environment-based deployment strategy, protected routing, API rewrites, file upload workflows, job polling, audio playback, generated artifact delivery, and public/private product-mode separation.