Chessroulette is an online platform that combines chess gameplay with real-time video interaction. It allows you to play one-on-one matches with friends or new opponents, join virtual classrooms for studying chess with instructors, and connect through video chat while playing. Designed to make online chess more interactive and personal, Chess Roulette helps players learn, play, and connect with ease.
First off, thank you for showing an interest in contributing to the Chessroulette project! We have created a Contributing Guide that will show you how to setup a development environment and how to open pull requests and submit changes.
Chessroulette is using a handful of services to function properly.
-
Movex: The Multiplayer Infrastructure. Learn more at movex.dev.
-
Turn Server: Ensuring the WebRTC connects even behind firewals or complex network systems via Twilio.
-
Signaling Server: Providing the WebRTC handshaking mechanism via Peerjs.
-
Chess Engine Server: Stockfish, Leela, etc.
- Install the Dependencies
yarn
- Create an Env file
.env.local
at the project root, and duplicate the sample variables found atsample.env
into it. Replace the "TBD" values with your own tokens!
touch .env.file; cat sample.env > .env.file
- Start the Client
yarn start:client
- In a separate Terminal, start the Server (Movex)
yarn start:movex
- Navigate to
localhost:4200
and enjoy your experience!
Movex is licensed under the MIT License - see the LICENSE file for details.
Movex wouldn't be the same without you, so thank you all for your amazing efforts and contribution!
Made with contrib.rocks.