I came across this video on the British Museum's YouTube channel: Tom Scott vs Irving Finkel: The Royal Game of Ur. In it, Irving Finkel—a curator at the British Museum—explains and plays one of the oldest known board games in human history, dating back roughly 4,500 years to ancient Mesopotamia. He reconstructed the rules from an ancient Babylonian cuneiform tablet.
As someone who enjoys chess and history, I found it fascinating. The idea that the same game was being played 4,500 years ago by another person just to pass the time is hard to wrap your head around. It's a small glimpse into the past.
I wanted to play it on my phone. That's where the problem started.
I couldn't find a single app that had both Chess and the Royal Game of Ur. Those were the two games I knew I wanted—everything else was a bonus. If I wanted to play multiple classic board games I'd have to download a different app for each one. I didn't want that.
I wanted one app. It didn't exist, so I built it.
I wanted something that stood out rather than another generic "Board Game Collection" app. Bored Games — a play on "board games" — felt right. Simple, memorable, and it does what it says on the tin.
Coming from a .NET background, .NET MAUI was the obvious first choice for a cross-platform mobile app. A single C# codebase targeting both Android and iOS sounded great on paper.
In practice, I kept running into quirks that required workarounds. Building interactive 2D game boards wasn't smooth, and when I looked at integrating Firebase for analytics and crash reporting, it felt like an afterthought in the MAUI ecosystem. Community packages were often outdated and official support was limited. Progress was slow and the friction added up.
I made the decision to start over in Flutter, and the difference was noticeable straight away.
Drawing complex game boards — a 19x19 Go grid, an asymmetrical Ur board — was straightforward with Flutter's widget model. Firebase integration was first-class and worked without the usual headaches. Flutter compiles to native ARM code, so performance wasn't a concern either. And the same codebase will target iOS when I get to that.
With Chess and Ur as the starting point, I worked through as many popular and well-known classic board games as I could — pulling from different cultures and time periods. Backgammon, Senet, Checkers, Mancala, Go, Connect Four and more made the list.
A few of them — Reversi, Go, and Mahjong — I didn't actually know how to play before building them. Working out the rules and implementing an AI opponent for each was a good way to learn.
The collection isn't fixed. I plan to keep adding games over time.
Bored Games is a growing collection of classic board games in a single, lightweight app. It works offline, has AI opponents, and a consistent UI across all games.
📥 Download Bored Games on Google Play
If you're into chess or board games in general — or if you watch that Irving Finkel video and want to give Ur a go — hopefully you'll find something in there worth playing.