GridGambit is a full-stack real-time multiplayer chess platform built with React, Node.js, TypeScript, WebSockets, Redis, and PostgreSQL. It enables users to sign up, play live matches, and maintain chess ratings using an ELO system β all in a clean, responsive interface.
- βοΈ Create or join live matches instantly
- π Real-time gameplay using WebSocket communication
- π§ Chess rules enforced (move validation, turn-based play)
- π PostgreSQL backend for persistent user and game data
| Layer | Technology |
|---|---|
| Frontend | React, TypeScript, Tailwind CSS |
| Backend | Node.js, Express, TypeScript |
| Real-Time | WebSocket Server (Socket.io) |
| Database | PostgreSQL |
chess-platform/
βββ apps/
β βββ frontend # React frontend
β βββ backend # Express + PostgreSQL backend
β βββ ws # WebSocket server for real-time gameplay
βββ README.md
git clone https://github.com/your-username/checkmatelive.git
cd checkmateliveCopy the .env.example files in each app folder:
cp apps/frontend/.env.example apps/frontend/.env
cp apps/backend/.env.example apps/backend/.env
cp apps/ws/.env.example apps/ws/.envUpdate the variables with:
- PostgreSQL credentials
- Google/GitHub OAuth credentials
- Redis connection string
npm install# Start WebSocket server
cd apps/ws
npm run dev
# Start Backend server
cd ../backend
npm run dev
# Start Frontend
cd ../frontend
npm run dev- Spectator mode
- Match history (FEN/PGN)
- Leaderboard and profile pages
- AI opponent using Stockfish
- Draw detection and timer support
Pull requests are welcome! For major changes, open an issue first to discuss what you would like to change.
MIT License. See LICENSE file for details.
Inspired by chess.com and built for learning, fun, and open collaboration.