A blind chess training website built for honing your board awareness and calculation abilities. Blind chess is a variant of the game in which you don't see any of the pieces on the board and instead make your moves using a chess notation like algebraic notation.
Start playing on this live site, deployed to Google Cloud!
- Frontend:
- Built with React
- Using the WebSocket API to communicate with the server during games
- Backend:
- Built with Golang
- Using Gin to route and serve content
- With Gorilla WebSocket for WebSocket communications
- And go-redis for interfacing with the Redis database
- Database:
- Utilizing Redis for high-performance data synchronization across server instances
- Other:
- Containerized with Docker
Play with a friend over the internet by creating a room or joining theirs. Rooms are identified by five character room codes that are easy to copy and paste or relay over VOIP.
With the ability to choose the duration and increment of your game you can turn up the heat with some blitz matches or take your time calculating with some classical or rapid. You can also choose which side you start with if you have a particular opening you want to practice.
Since all of the moves in your game are stored, after you're done playing you can click a link and access a Lichess analysis board of the final position. Load in the PGN of the game too to analyze your game using the Stockfish chess engine and see how the tides of the game turned.
git clone github.com/kananb/Blind-Chess.git
Before continuing, make sure you have Docker installed.
echo PORT=${PORT} > .env
Replace ${PORT}
with whichever port you want to run the web-service on.
docker-compose -f docker-compose.redis.yml up
docker-compose up