Ratio'd 🐦

Tracks: SOLO, AI/ML, GENERAL

The court of public opinion is now in session.

A PR crisis simulator powered by Claude AI. Pick your scandal, craft your response, and find out if you can survive the internet.

Built solo at HackHounds 2026 — Baltimore, MD.


Inspiration

Everyone is one bad post away from a PR nightmare — but nobody actually practices for it. I wanted to build something that felt like the real thing: chaotic, reactive, and unforgiving.

What It Does

Pick a crisis. Survive three rounds of live social media pressure from four AI personas who react to exactly what you say.

  • 😤 The Mob — anonymous outrage that quotes your words back at you
  • 📰 The Press — every question is a trap
  • 💼 The Sponsor — passive aggressive, always threatening to leave
  • 📱 Your PR Advisor — calm, blunt, barely holding it together

You can type a public statement or record a video apology — which gets transcribed via Whisper and scored on word choice and body language via Claude Vision. After three rounds you get a reputation score and a verdict.

How I Built It

  • Frontend: React + Vite + Tailwind CSS
  • Backend: FastAPI — proxies all AI calls server-side
  • Personas: Claude API, one system prompt per character, running in parallel via asyncio
  • Video: MediaRecorder → Whisper transcription + Claude Vision frame analysis
  • Scoring: Separate Claude call returns a structured JSON reputation breakdown

Challenges

Getting the four personas to feel distinct and remember prior rounds took more prompt engineering than expected. I solved memory by threading each persona's prior reactions back into the next prompt — so the journalist can call back to their own round 1 question.

The video pipeline had the most failure points — MediaRecorder mime type variance, Whisper format requirements, and live frame capture all had to work in sequence.

What I Learned

  • Parallel async calls make a bigger UX difference than almost any visual polish
  • Prompt engineering is real engineering — persona voice lives or dies in about 10 words
  • Scope ruthlessly: the features that got cut are why the features that shipped work

What's Next

  • Difficulty levels
  • A fifth persona: The Defender — a fan who tries to help but makes it worse
  • Shareable result cards
  • Expanded scenario library

Built With

Share this project:

Updates