Chess Broadcaster

Web appJan 2018–Dec 2019

Screenshot or cover image from Chess Broadcaster

Project description

Facilitates over-the-board games by broadcasting the moves live to the tournament platform, chess24, and to a dedicated client device that presents the game to on-site spectators.

The project was developed and used internally by the “Le Roi” Chess Team of the National Technical University of Athens. It was employed to broadcast 3 university tournament finals in 2018 and 2019.

Also featured is a mobile web app that acts as a remote controller for the display device.

Technical overview

Backend

  • Written in vanilla PHP , the backend is responsible for fetching PGN files that contain the game moves from the chess platform Lichess, where a user is manually recording the game, and broadcasting it to the client app via AJAX and to chess24 via an FTP integration.
  • AJAX also relays requests from the remote control to the server, which are received by the display device via polling.
  • JSON is used as a minimal storage solution for the app state and for configuration.

Frontend

  • Vue renders the client applications for the display device and the remote controller device.
  • jQuery is used for some DOM manipulations, animations, and AJAX calls.
  • Bootstrap provides UI components.