You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+45-34Lines changed: 45 additions & 34 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
-
# Chess Game - Real-time Multiplayer Chess Application
1
+
# ♟️ Chess Game – Multiplayer Chess, Rebuilt for 2025
2
2
3
-
A modern, full-stack, real-time multiplayer chess application built with a powerful combination of Node.js, React, PostgreSQL, and WebSocket technology. It features a comprehensive authentication system, intelligent matchmaking, and a seamless, responsive gameplay experience.
3
+
Because chess shouldn’t feel like a relic from 2005. This is **real-time multiplayer chess** built like a modern startup product — fast, scalable, and ridiculously smooth.
This chess application provides a complete multiplayer experience, designed from the ground up for performance and scalability. The responsive frontend built with React and the robust Node.js backend support thousands of concurrent players with sub-second move latency.
12
+
Built with a **React frontend** and a **Node.js backend**, this app scales to thousands of players while keeping move latency under a second. Add Redis, WebSockets, and some startup-grade design flair — you’ve got chess reimagined.
13
+
14
+
---
13
15
14
16
## ✨ Key Features
15
17
16
-
- 🔐 **Login Like a Pro** – Guests get instant session access, power users get Google OAuth. No fuss, just in.
17
-
- ⚡ **Moves in Milliseconds** – WebSocket magic keeps the board in sync. You move, they see. Instantly.
18
-
- 🎨 **UI That *Feels* Alive** – Tailwind + Framer Motion. Crisp, smooth, animated. Works everywhere.
19
-
- 🧠 **Matchmaking on Steroids** – Redis queues + ELO logic = you play people at your level. Always.
20
-
- 🤖 **Play vs Bot** – Don’t want to wait? Test your skills against the built-in computer. Warm up before you crush real players.
21
-
- ♟️ **Full-Fledged Chess Brain** – En passant, castling, promotions—powered by Chess.js. No shortcuts, just real chess.
22
-
- 💬 **Trash Talk Ready** – In-game chat with typing indicators. Say “gg” or drop the heat.
23
-
- 🏠 **Rooms That Work for You** – Hop into a public lobby or spin up a private invite-only room for friends.
24
-
- 🔄 **Disconnect-Proof** – WiFi died? No panic. Reconnect and your game picks up where you left off.
25
-
- 🛡️ **Fair Play Only** – Rate limits, move validation, and anti-spam. No cheaters, no nonsense.
26
-
27
-
## 🚀 Tech Stack
28
-
29
-
### Frontend
30
-
31
-
-**Core Framework**: **React.js 18+** with Vite
32
-
-**Styling**: **Tailwind CSS** with Radix UI for accessible components
33
-
-**State Management**: **Zustand** for simple, centralized global state
34
-
-**Data Fetching & Caching**: **TanStack Query (React Query)** for server state management
35
-
-**Animations**: **Framer Motion** for fluid UI transitions and animations
36
-
-**Real-time Client**: Native WebSocket API for live communication
37
-
38
-
### Backend
39
-
40
-
-**Core**: **Node.js 18+** with TypeScript
41
-
-**API Framework**: **Express.js** with comprehensive middleware
42
-
-**Database**: **PostgreSQL** with **Prisma ORM** for type-safe database access
43
-
-**In-Memory Caching & Queues**: **Redis** for high-performance caching of active game state, session management, and powering the real-time matchmaking queues.
44
-
-**Real-time Server**: **`ws` library** for a high-performance WebSocket server
45
-
-**Authentication**: **JWT** with **Passport.js** for Google OAuth strategy
46
-
-**Game Logic**: **Chess.js** for robust move validation
18
+
- 🔐 **Login Like a Pro** – Guests jump in instantly, power users get Google OAuth. No friction, just play.
19
+
- ⚡ **Moves in Milliseconds** – WebSockets keep your board synced in real time. You move, they see. Instantly.
20
+
- 🎨 **UI That *Feels* Alive** – Tailwind + Framer Motion. Smooth, animated, responsive. Looks good everywhere.
21
+
- 🧠 **Matchmaking on Steroids** – Redis queues + ELO logic. Always land players at your skill level.
22
+
- 🤖 **Play vs Bot** – Don’t feel social? Warm up against the computer before you crush real opponents.
23
+
- ♟️ **Full-Fledged Chess Brain** – En passant, castling, promotions—powered by Chess.js. No shortcuts.
24
+
- 💬 **Trash Talk Ready** – Real-time chat with typing indicators. “gg” or talk smack, your call.
25
+
- 🏠 **Rooms That Work for You** – Quick public games or invite-only private lobbies. Flexibility built-in.
26
+
- 🔄 **Disconnect-Proof** – WiFi dropped? No sweat. Reconnect and pick up right where you left off.
27
+
- 🛡️ **Fair Play Only** – Rate limiting, illegal move detection, anti-spam. No cheaters, no nonsense.
28
+
29
+
---
30
+
31
+
## 🚀 Tech Stack
32
+
33
+
### 🎨 Frontend
34
+
35
+
-**Framework**: React.js 18+ with Vite (fast dev, instant HMR)
36
+
-**Styling**: Tailwind CSS + Radix UI (accessible, modern components)
37
+
-**State Management**: Zustand (lightweight, no boilerplate)
38
+
-**Data Layer**: TanStack Query (React Query) for server state & caching
39
+
-**Animations**: Framer Motion for smooth transitions
0 commit comments