Skip to content
MG
Social deduction party game

R.A.T.

Recognize A Traitor: everyone gets the secret word except the impostor. Play on one shared phone or online in real-time rooms, in English or Spanish.

Next.jsTypeScriptSocket.IOFastAPIRedisDocker
Visit the site (opens in a new tab)
R.A.T. home screen with the Play Online and One Device buttons

Overview

A party game I built for my friends. Each round hands out roles (civilians, the impostor, and special roles like the detective and the joker); players give clues, argue and vote out whoever they think is lying. We played it a lot for over a month, mostly around one phone.

What it does

  • Two modes: pass one device around, or play online in rooms anyone can join from a public list.
  • Real-time game state over Socket.IO, through the clue, discussion and voting phases.
  • A FastAPI backend that keeps rooms in Redis and uses pub/sub to run on several instances.
  • English and Spanish, with word categories to choose from.

My role

Designed and built alone, front and back, from November 2025 to January 2026. The frontend runs on Vercel; the API ships in Docker.