← Drop4Product Requirements Doc
MVPWeb · Realtime2 Players

Drop4 PRD

A two-player online Connect Four.

Goal
Ship playable 1v1 Connect Four in 2 weeks.
Users
Casual players who want a quick game with a friend.
Scope
Core gameplay, win detection, room-code match.
Non-goals
Accounts, ranking, AI, chat, mobile apps.
§01

Problem & Opportunity

Existing Connect Four web games are buried under ads, require sign-ups, or force you into a queue with strangers. There's no clean, instant option for two friends on a call who want to play one quick match.

Opportunity: a frictionless, link-shareable Connect Four that loads in under two seconds and gets two players into a game in under ten.

§02

Core User Stories

Story
Create a game
As a host, I get a shareable room code/link.
Story
Join a game
As a guest, I open the link or enter the code and instantly join.
Story
Play a turn
As a player, I click a column to drop my disc; the board updates for both players in real time.
Story
Win or draw
As a player, I see immediately when I win, lose, or draw, with the winning four highlighted.
Story
Rematch
As a player, I can instantly start a rematch with the same opponent, swapping who goes first.
Story
Resilience
As a player, if my connection drops briefly, I can reconnect and resume.
§03

Game Rules

  • Board is 7 columns × 6 rows.
  • Two players: Red and Yellow. Red moves first.
  • On your turn, choose a column; your disc occupies the lowest empty cell.
  • First to align 4 horizontally, vertically, or diagonally wins.
  • If the board fills with no winner, the game is a draw.
  • Illegal moves are rejected by the server.
§04

Technical Architecture

Frontend
  • React + TanStack Start (SSR)
  • Tailwind for styling
  • Realtime subscription client
Backend
  • Lovable Cloud (Postgres + Realtime)
  • games table: code, board, turn, status, winner
  • Server-side move validation via server functions
§05

Out of Scope (MVP)

  • User accounts, profiles, friends list
  • Public matchmaking / queues
  • ELO, ranks, leaderboards
  • AI opponent
  • In-game chat or emotes
  • Spectator mode and replays