Skip to content

jongomezdev/fishbowl

Repository files navigation

Fishbowl Web App

Realtime web companion for the Fishbowl party game.

This implementation is a playable v1 foundation focused on:

  • Private invite-code rooms
  • No-account guest player flow
  • Host-controlled game progression
  • 3 clues per player
  • 40-second turns
  • Three rounds (describe, act, one-word)

Tech Stack

  • Next.js (App Router) + TypeScript
  • Tailwind CSS
  • Zod for request validation
  • Prisma (schema + client setup for upcoming persistence)

Current Status

Implemented in this pass:

  • Home screen to create or join rooms
  • Room screen with stage-aware controls
  • In-memory server-authoritative game store
  • API routes for create/join/start clue entry/submit clue/start round/draw/mark/end turn
  • Round and turn engine with timer expiration rollover
  • Basic fairness behavior where only the active actor sees clue text

Not yet implemented:

  • Database-backed persistence (currently in-memory)
  • WebSocket event broadcasting (polling is currently used in UI)
  • Authentication, spectator mode, and advanced anti-cheat controls

Run Locally

npm install
npm run prisma:generate
npm run dev

Open http://localhost:3000.

Useful Scripts

npm run dev
npm run lint
npm run build
npm run test
npm run test:e2e
npm run prisma:generate
npm run prisma:migrate

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors