461af20c8c1ca32724eba3bb6070676473e0a7fb15dd4cc5ffad165b752e03c5
Go Chess API |
Chess
Go backend server providing a RESTful API for chess gameplay. Integrates Stockfish engine for move validation and AI opponents.
Features
- RESTful API for chess operations
- Stockfish engine integration for validation and AI
- Human vs human, human vs computer, computer vs computer modes
- Custom FEN position support
- Asynchronous AI move calculation
- Configurable AI strength and thinking time
Requirements
- Go 1.24+
- Stockfish chess engine (
stockfishin PATH)
Installation
# Arch Linux
yay -S stockfish
# FreeBSD
pkg install stockfish
Quick Start
git clone https://git.lixen.com/lixen/chess
cd chess
go build ./cmd/chessd
# Standard mode (1 request/second/IP)
./chessd
# Development mode (10 requests/second/IP)
./chessd -dev
# Run tests (requires dev mode)
./test/test-api.sh
Server listens on http://localhost:8080. See API Reference for endpoints.
Documentation
- API Reference - Endpoint specifications
- Architecture - System design
- Development - Build and test instructions
- Stockfish Integration - Engine communication
License
BSD 3-Clause
Languages
Go
61.8%
Shell
15.6%
JavaScript
14.5%
CSS
4.6%
HTML
1.8%
Other
1.7%