TicTacToe Game with LiveView

To start your Game server:

  • Make sure asdf is installed in your system
  • Open terminal in root project directory
  • Run chmod +x ./run-server.sh
  • Run ./run-server.sh and let it complete the setup

Now you can visit localhost:4000 from your browser to play game.

Notes

  • Leave Lobby ID field on homepage empty to create a new lobby.
  • In different browser tab, enter the Lobby ID displayed in previous tab to join as new user.
  • Any user that joins after first 2 user's can only spectate.
  • Spectators can't rejoin a game.
  • Go to /admin to access Admin Dashboard.

What can be improved?

  • Authentication will help users resume playing without having to keep the game link handy.
  • Admin Dashboard can display more data if needed.
  • Many more tests are required which couldn't be done due to lack of time.
  • UI will make you feel like playing TicTacToe with paper and pen is better.
  • Can be scaled horizontally.
  • GameState can be preserved across restarts if needed.

Screenshots

Player 1 Home Page Player 2 Home Page Player 1 Lobby Page Player 2 Lobby Page Player 1 Home Page With Player 2 Your Turn Lobby Page With Winner Spectator Home Page Spectator Game Page Admin Page