name

Arcade - multiplayer Monopoly and Chess

synopsis

context
Personal project
period
2022 to 2023
stack
Python, Tkinter, Flask, MySQL

description

Two board games played online against other people. Room and game events travel over a TCP protocol built for it, a Flask API handles accounts, and the client is Tkinter.

highlights

  • Designed the wire protocol carrying room and game events between the server and every connected player.
  • Implemented full Monopoly and Chess rules, and the shared state each client has to be kept in step with.
  • Built accounts, profile pictures and lifetime statistics behind a Flask API backed by MySQL.
  • Implemented a custom dark theme for Tkinter, and designed the entire UI with custom widgets.

links

also a man page: curl -L okaybro.dev/man/arcade