v0.1.0 — Initial production release
ChessKernel v0.1.0
First production-ready release. Self-hosted chess platform — no external paid dependencies.
Features
Gameplay
- Real-time multiplayer via Socket.IO
- Bot games against Stockfish (easy / medium / hard / max)
- Move clock with configurable time controls (bullet / blitz / rapid / classical)
- Full castling support — including king-to-rook drag (chess.com convention)
- Resignation, draw offer / accept / decline
- Page-refresh reconnect without auto-loss
Analysis
- Post-game Stockfish analysis (depth 20)
- Move classification with chess.com-exact colors: brilliant, great, best, book, inaccuracy, mistake, blunder
- Classification badges on the board's destination square
- Eval bar that tracks exact board height (CSS Grid)
- Best-move arrow overlay for non-optimal moves
- L-shaped SVG arrows for knight-move annotations (right-click drag)
Social & Ranking
- Glicko-2 rating system per time control
- ELO-based matchmaking queue
- Friend system (request / accept / remove)
- Token-based game invitations (shareable link)
- Leaderboards per time control
- In-app notifications
Platform
- i18n: English, Portuguese, Spanish
- Dark / light theme
- Responsive layout
- Docker Compose production stack (Nginx, PostgreSQL, Redis, NestJS, React)
Getting Started
git clone https://github.com/mateuseap/chesskernel.git
cd chesskernel
cp .env.example .env # fill in secrets
docker compose -f docker/docker-compose.prod.yml up -d
docker compose -f docker/docker-compose.prod.yml exec server npx prisma migrate deploySee Deployment Guide for full instructions.
Requirements
- Docker 24+ and Docker Compose 2+
- Stockfish 15+ (on host or container)