RoastRoom - AI Arguments & Roasts Arena
A real-time multiplayer platform for intellectual clash and comedic battles, evaluated by an impartial GPT-4o AI judge.
Read Me
🎙️ RoastRoom - Win Arguments. Destroy Egos. Earn XP.
The ultimate digital arena powered by AI where wit meets wisdom.
🔥 What is RoastRoom?
RoastRoom is a real-time platform designed for those who love high-stakes intellectual clashes and ruthless comedic battles. Outsmart your opponents in a fast-paced environment judged and evaluated in real-time by an impartial GPT-4o AI referee.
🎮 Game Modes
- ⚔️ Debate Mode: Focus on logic, evidence, and structured arguments. Perfect for testing your rhetorical skills and critical thinking.
- 🔥 Roast Mode: Unleash your inner comedian. Score points for creativity, humor, and sheer disrespect (kept within the rules, of course!).
🤖 The AI Judge
Forget biased human voting. Every response in RoastRoom is analyzed in real-time by a sophisticated GPT-4o judge. Our AI evaluates battles based on:
- Logic: The strength and coherence of your argument.
- Creativity: How unique and unexpected your points are.
- Clarity: How well you communicate your message.
- Humor: (Roast Mode only) The "burn" factor and comedic timing.
🛡️ Architectural Overview
RoastRoom pairs a sleek frontend with a powerful, high-availability engine orchestrating real-time socket sessions, AI interactions, and persistent player progression:
- Real-time Synchronization handled via
Socket.io, ensuring sub-100ms latency. - AI Intelligence orchestration querying
OpenAIfor high-granularity scoring. - Player Lifecycle with comprehensive XP, leveling systems, and global leaderboards.
- Automated Profanity Filtering to keep the arena competitive but respectful.
🛠️ Tech Stack
- Frontend Architecture: Next.js 14 App Router, Zustand reactive global state, Framer Motion
- Styling: Tailwind CSS with Glassmorphism aesthetic
- Backend Infrastructure: Node.js, Express.js, Mongoose + MongoDB
- Low Latency Messaging: Socket.io & WebSockets implementation
🚀 Getting Started
1. Clone the repository
git clone https://github.com/vedangdhuri/RoastRoom.git
cd RoastRoom
2. Setup the Server
Navigate to the server directory:
cd server
Create a .env file in the root with:
PORT=5000
MONGODB_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_signing_key
OPENAI_API_KEY=your_openai_key
FRONTEND_URL=http://localhost:3000
Install dependencies and start development:
npm install
npm run dev
3. Setup the Frontend
Navigate to the frontend directory:
cd ../frontend
Install dependencies and run:
npm install
npm run dev
🌟 Match Lifecycle
- Initialization: Players join a lobby and set a topic.
- Battling: Real-time turns with countdown timers.
- Scoring: Every round is scored by the AI Service.
- Finalization: Winner declared, XP distributed, and match saved.