Inspiration

I was on my high school's debate team for three years, and during that time I fell in love with debate. I love the complexity that debate can bring, but debate can also be hard to follow, both for non-debaters watching from the outside and for experienced debaters in high-level rounds.

I wanted to build a tool that could quickly break down a debate into a visual format so people could understand it more clearly after it happened. The content and flow of a debate are often forgotten if no one writes them down in the moment, but with a recording, Deliberate can turn that debate into a fully fledged flow map.

What it does

Deliberate turns a debate into a map you can actually read. Upload an MP4 or audio file, point it at a YouTube video, browse to an article or PDF, or just talk, and Deliberate converts the argument into an Issue-Based Information System map. The map shows the central question, the competing positions, and the pros, cons, and evidence connected to each one.

Every node is grounded in its source, whether that is a transcript quote, a timestamp, or a captured page, so you can trace any claim back to who said it and where it came from.

Deliberate supports four modes:

  • Upload mode turns an MP4 or audio file into a diarized, timestamped transcript and then a map.
  • Browse mode turns a URL or PDF into a captured source with a screenshot and replay trail, then a map.
  • Observe mode listens to a live debate through your mic and grows the map in real time.
  • Argue mode lets you debate a spoken AI opponent that pushes back out loud, and the whole exchange becomes a map.

The result is a living argument map that makes the shape of a disagreement legible at a glance.

How I built it

  • We built Deliberate with Next.js and React Flow for the app and editable 2D canvas, including pan, zoom, drag-to-connect, and IBIS node grammar.
  • Deepgram powers the voice layer. We use Nova-3 for diarized, timestamped transcription across prerecorded and live audio, and Aura TTS for the AI opponent's spoken rebuttals.
  • Anthropic Claude powers the reasoning layer. Claude Haiku extracts the IBIS graph through structured outputs, and Claude Sonnet acts as a judge that scores each map. A deterministic validation-and-repair layer enforces the IBIS grammar so every map is structurally correct by construction.
  • Browserbase handles source capture. A recorded cloud browser pulls page text and PDF bytes, along with a screenshot and replayable session, so the map has an evidence and trust trail.
  • Arize gives us observability. OpenTelemetry traces every pipeline run, including tokens, cost, latency, node counts, and evaluator results. An online evaluator automatically grades each map for IBIS correctness.

Challenges I ran into

  • One of the hardest parts was making an LLM obey strict IBIS structure. Models often want to attach a con directly to the central question instead of attaching it to a position. We built a deterministic repair pass that re-links every pro and con to its correct parent, giving us strict IBIS by construction instead of hoping the model gets it right.
  • Another challenge was making the product feel useful instead of generic. Early versions looked and felt like a standard AI demo, but I had a specific vision for a clean, visual workspace that felt more like a debate flow tool than a chatbot. It took a lot of iteration to get the interface to that state.
  • We also had to account for messy real-world inputs: unclear audio, multiple speakers, imperfect transcripts, long videos, PDFs, web pages, and live conversations. The app needed fallbacks, validation, and visible evidence links so users could trust but verify the generated map.

Accomplishments that I'm proud of

  • Built a clean UI and UX experience around visual debate mapping.
  • Shipped four working input modes: upload, browse, observe, and argue.
  • Created a live spoken debate mode where an AI opponent talks back out loud.
  • Grounded every node in evidence, from claim to quote to timestamp or source.
  • Added full observability so every run is traced and automatically evaluated.
  • Enforced valid IBIS maps by construction rather than best effort.
  • Shipped the project to production at usedeliberate.com with multiple sponsor technologies integrated.

What I learned

  • I learned that building a large project with AI still requires a lot of taste, direction, and iteration. The first versions had a very generic AI-generated feel, but I had a clear vision for how the app should look and feel, so I kept steering it toward that.
  • I also learned that transcription alone is not the product. The valuable part is turning speech into something people can inspect, edit, and reason about. A debate map is only useful if every generated claim stays connected to the original evidence.
  • Finally, I learned that IBIS is a strong format for AI-assisted debate mapping because it is structured enough to validate but lightweight enough for people to understand and edit.

What's next for Deliberate

  • Next, I want to turn Deliberate from a single-session demo into a real workspace. The biggest step is adding an account system with Supabase so users can sign in, keep a library of their maps, and return to debates they have already analyzed.
  • I also want people to be able to save and share maps with others. A user should be able to generate a map from a debate, clean it up, and send a link to a teammate, classmate, or community so everyone can inspect the same claims, evidence, timestamps, and objections.
  • Longer term, shared maps could support permissions, comments, collaborative editing, and public read-only views for making complex disagreements easier to understand together.

Built With

Share this project:

Updates