A real-time multiplayer game where players guess whether a political headline is real or AI-generated.
- Mix of real and AI-generated news
- Random Manipulator each round
- Manipulator knows the truth and tries to mislead
- Citizens vote REAL or FAKE
- Live vote tracking
- Automatic timers, reveal, and next rounds
- Score system + leaderboard
- Frontend: React + TypeScript + Vite
- Backend: Node.js + Express + Socket.IO
- Python: Pandas + OpenAI API
- Dataset: News Category Dataset
npm install
cd server
npm install
pip install pandas python-dotenv openaiCreate server/.env:
GPT_API_KEY=your_openai_api_key
PYTHON_CMD=py
ROUND_TIME_SECONDS=30
REVEAL_TIME_SECONDS=6get_runner.py
generate_fake.py
News_Category_Dataset_v3.json
.env
server.js
npm run server
npm run devnpm run dev -- --host --port=5173
npx cloudflared tunnel --url http://localhost:5173cd server
npm run server
npx cloudflared tunnel --url http://localhost:3001Cloudflare will generate public URLs. Share those links with others.
- Players join a room
- Game starts
- Each round:
- One random player = Manipulator
- First half of rounds = real news
- Second half = AI-generated
- Manipulator sees the truth
- Citizens vote
- Reveal happens:
- Manipulator can reveal early
- OR auto reveal after timer
- Scores update:
- Citizens get points for correct votes
- Manipulator gets points for fooling people
- Next round starts automatically
- Manipulator cannot vote
- Only manipulator can manually reveal
- Votes only count from citizens
- Game auto-progresses
npm run dev
npm run server- Make sure dataset is in
/server - Make sure
.envkey is correct - Python must be available as
pyorpython
MIT