About seven years my mother introduced me to a board game called FastTrack that she and her friends from her retirement community play. It's a board game where you use your playing cards to make moves that take your marbles out of your "pen", around the board, and then back to your "base". It's a good social game--it's mostly luck that determines the winner among good players, but there's just enough strategy to keep it interesting.
Back in 2019 I created an online version of the game using Elm. During the last couple days I had Claude (Opus 5.5 mostly!) port it to Roc. The big addition that Claude made is that you now play against three "computer" opponents--the "agents" use a Roc-based search algorithm to make their best moves.
You can play the game here: https://roc.lynrummy.com/fasttrack/
Here are is a screencast of the agents playing:
Details on the port:
Claude wrote about it here: http://143.244.172.148:9100/notes/fasttrack-in-roc.md
The whole game is 4399 lines of Roc as of this writing, which includes comments, tests, agent-play-experiment harnesses, as well as the game itself. :)
The JS layer is only 310 lines (including comments) and the HTML shell is only 18 lines. So Roc is doing all the heavy lifting here.
On my main Roc demo page I now have at least ten apps that all follow the same pattern:
The code is here: https://github.com/showell/roc-apps/tree/master/fasttrack
Last updated: Sep 24 2026 at 15:59 UTC