Skip to content

Byte-Builders-28/unnecessary

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

☠️ VibePlay (Ship or Sink)

A chaotic, real-time multiplayer party game powered by React, FastAPI, WebSockets, and a Savage Gemini AI Judge.

Gather your friends in a lobby, deceive each other, and see who survives the Vibe Check.


📸 Screenshots

VibePlay Gameplay


🎮 The Games

1. Who Is The Spy?

  • The Catch: Everyone gets the same secret word... except for one player (The Spy), who gets a slightly different but related word. (Powered by a randomized Gemini seed to ensure words never repeat!)
  • The Play: Take turns giving one-word clues about your word.
  • The Goal: The normal players must find and vote out the Spy. The Spy must figure out what the normal word is and blend in.

2. Roast Battle 🔥

  • The Catch: 2 random players in the room are thrown into the arena. The others spectate.
  • The Play: The battlers get 3 continuous rounds to type out their most brutal roasts against each other.
  • The Goal: Destroy your opponent. At the end of round 3, the Gemini AI Judge processes the transcript, declares a specific winner, provides a savagery percentage (e.g., 80% vs 20%), and adds a savage commentary of its own.

😈 Bonus: Form Sabotage

The Lobby has a hidden 60% chance to wipe either your Alias or Room Code the very first time you try to join, giving you a fake error. Only the real ones make it through on the second try.


🛠️ Tech Stack

  • Frontend: React + Vite, raw CSS (Neon cyberpunk aesthetics)
  • Backend: Python + FastAPI + Uvicorn
  • Communication: Raw WebSockets (asyncio event loop)
  • AI Integration: Google Gemini API (google.generativeai)
  • Validation: Pydantic

🚀 How to Run Locally

Prerequisites

1. Backend Setup

cd src/vibeplay/server
python -m venv venv
source venv/Scripts/activate # (Or venv/bin/activate on Mac/Linux)
pip install -r requirements.txt

Create a .env file in src/vibeplay/server:

GEMINI_API_KEY=your_api_key_here
GEMINI_MODEL=gemini-2.5-flash
HOST=0.0.0.0
PORT=8000
DEBUG=false
MAX_PLAYERS=8
ROUNDS_PER_GAME=3

Run the backend:

python main.py

2. Frontend Setup

cd src/frontend
npm install
npm run dev

3. Play!

Open your browser to http://localhost:5175 (or whatever port Vite gives you). Open a second tab to act as Player 2. Enter the same room code and let the chaos begin!

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors