Reversi
Browser Reversi, my General Assembly final project and the code that got me hired at Smash Creative

Languages
Overview
Reversi (Othello) was my final project at General Assembly in the fall of 2018. The brief was to build a board game. I picked one whose rules are fiddly to get right: every move has to check all eight directions for discs it can outflank, a turn is forfeited when there's no legal move, and the game has to know when it's over. The first version was plain JavaScript, HTML, and CSS.
It's the oldest thing on this page. It's here because it's the code that got me hired at Smash Creative, and because it's where the schooling turned into something I wanted to keep doing.
The rewrite
Later I rebuilt it in React and added online play over socket.io: match with a random opponent, or share a room code with a friend. Local one-player and two-player modes stayed. The one-player opponent isn't clever. It lists the legal moves and picks one at random.
That rewrite is what's deployed. The client points at a socket server that no longer runs, so the online modes are dead and only local play works today. The rewrite's source was lost for years; the client came back this year from the source maps still sitting next to the deployed bundle. The server is still gone.