# RivalryFuel: AI Hype Commentary for Any Rivalry

> Source: <https://dev.to/aniket_saini_7/rivalryfuel-ai-hype-commentary-for-any-rivalry-1303>
> Published: 2026-07-10 11:00:06+00:00

*This is a submission for Weekend Challenge: Passion Edition*

**RivalryFuel** — an AI-powered hype commentary generator that turns any rivalry into a dramatic, stadium-announcer-style speech. Pick two sides (sports teams, tech stacks, even Tea vs Coffee), hit generate, and Gemini writes a passionate, biased commentary — then ElevenLabs brings it to life with a real announcer voice.

With the World Cup happening right now, passion for rivalries is everywhere — in stadiums, group chats, comment sections. RivalryFuel captures that same chaotic, biased energy in a 30-second, shareable format. My goal was to build something that felt genuinely fun to click "generate" on more than once.

🔗 **Live App:** [https://rivalryfuel-686994035117.asia-southeast1.run.app](https://rivalryfuel-686994035117.asia-southeast1.run.app)

🎥 **Video Demo:** [https://youtu.be/imMa8FMHlck](https://youtu.be/imMa8FMHlck)

Try it yourself — click a preset like "Messi vs Ronaldo," hit Generate Commentary, then hit "Listen to Column" to hear it out loud.

The app is built with React + TypeScript + Vite + Tailwind CSS, deployed on Google Cloud Run.

**Gemini 2.0 Flash** powers the core hype generation — I engineered the prompt to keep responses playful, biased toward the chosen side, and dramatically "shouted into a stadium mic" rather than neutral or robotic. Getting the tone right took a few iterations of prompt tweaking.

**ElevenLabs** handles the text-to-speech layer — the generated commentary is sent to ElevenLabs' API and played back in-browser as a stadium-announcer voice, turning static text into something that actually feels alive.

One fun challenge: I hit Gemini's free-tier rate limit mid-build and had to switch API keys/projects to keep testing — a good reminder that even small demo apps need quota planning. I also had a UI bug where longer names like "Cristiano Ronaldo" were clipping on smaller screens, fixed with responsive flex layouts and dynamic font scaling.

Submitting for:

Thanks for putting together another fun challenge — built this solo over the weekend! Would love to hear what rivalry you'd want to see hyped up next 🔥
