Sudoku With Friends

Play it here: Sudoku With Friends.

My partner and I like to collaborate on the New York Times sudoku puzzles everyday. Recently, I had to visit my mother in Louisiana and we had no good way to do the puzzle. I decided to build this little app so that anyone can collaborate on a classical sudoku puzzle with their friends. I also built a sister chrome extension that converts the NYT sudoku puzzles into .sdk format. The UI is basically identical to the NYT sudoku page.

Initially I thought about using WebRTC because I had some false notion that I wouldn’t need a server but after a little research that said otherwise I stuck to websockets, using the socket.io library. I’ve used socket.io once before to build my pandemic board game clone, so I was confident that I’d avoid the usual attendent footguns when using an unfamiliar library. As it turned out, the most difficult thing was writing the markup and css to replicate the NYT Sudoku UI. I ended up implementing the entire thing with css vmin units to avoid alot of tricky layout math. The networking was relatively straight forward, simply sending board state on connection and sending number and candidate placement as needed.

For my usecase, its feature complete, including showing what cell your friends have connected to aid communication, behaving nicely on mobile, and highlighting conflicts.

Hope y’all enjoy, if you want to boot it up locally or help me add features the source code is available here:

Github: Sudoku With Friends

Github: New York Times Sudoku Importer