NES Tetris rewritten in a completely functional style using Scala with Cats, including a GUI in HTML/ScalaJS.