A modern, real-time multiplayer chess application built with SvelteKit, Socket.IO, and Redis. Play chess with friends through shareable game links, featuring real-time moves, game state management, and WebSocket communication.
š® Play Now - Live Demo
+----------------+ WebSocket +----------------+ Persist +----------------+
| | <--------------> | | <------------> | |
| SvelteKit UI | Socket.IO | Express/Node | State | Redis |
| | | | | |
+----------------+ +----------------+ +----------------+
Clone the repository:
git clone https://github.com/yourusername/chess-app.git
cd chess-app
Install dependencies:
npm install
Set up environment variables:
cp .env.example .env
# Edit .env with your configuration
Start development server:
npm run dev
For production build:
npm run build
npm run start
# Build and run with Docker Compose
docker compose up -d
chess-app/
āāā src/
ā āāā lib/ # Shared components and utilities
ā āāā routes/ # SvelteKit routes and pages
ā āāā server/ # Backend server code
ā āāā server.ts # Main server entry point
āāā static/ # Static assets
āāā certs/ # SSL certificates
āāā docker-compose.yml
The application is deployed at chess.bidseek.dev using:
MIT License - See LICENSE file for details
Contributions welcome! Please read CONTRIBUTING.md for guidelines.