Tabletop Portal
Someone in the group chat says "let's play something." Twenty minutes later you are still comparing tabs. This is the page I wanted open instead: every board game that has a good online version, with the numbers that decide the evening, and one link to the place that runs it best.
It does not run any games itself. Board Game Arena, netgames.io, codenames.game, colonist.io and a few dozen smaller sites already do that well, and the problem was never a shortage of implementations. The problem is remembering which of them exists, whether it is any good with five people, and whether it needs everyone to make an account first. The portal answers those questions and then gets out of the way.
What is in it
- 92 games across ten categories: party, social deduction, word, drawing, strategy, card games, co-op, classics, family and trivia. Codenames, Avalon, Coup, Wavelength, Azul, Catan, Hanabi, Gartic Phone, skribbl.io, Love Letter and so on.
- The numbers that matter: player range, the counts the game is actually best at, minutes per game, a 1 to 5 complexity rating, and whether it is free, free with an upsell, or paid. Games that need a voice call to work are marked as such.
- Every place to play it, with the best one first. Links are checked against a test suite: every URL is https, every game has at least one, and the recommended counts have to fall inside the player range.
- A write-up per game: what it feels like at the table, why you would pick it over its neighbours, and a screenshot of the site you are about to be sent to, so nothing is a surprise.
Finding tonight's game
- Browse: a search box that understands "bluffing" or "two player" as well as names, category chips, and dropdowns for players, time and complexity. A free-only switch hides the games you have to pay for.
- Discover: say how many of you there are, how long you have and what mood you are in; it shuffles the matches and puts the games that are best at exactly your count on top.
- Shelves: the browse page groups games into rows such as "bluffing and betrayal", "big group? no problem" and "just the two of you", with one spotlight game at the top that changes every day.
Built with
React 19 · TypeScript · Vite · Tailwind CSS v4. Client-only with no backend and no accounts; the catalog is a typed TypeScript module with a Vitest suite that keeps slugs unique and links sane. Static on GitHub Pages at jackhomer.com/board-game-portal/.
Missing a game? The catalog is one file in the repo. Open a pull request with the entry and a working link, or tell me and I will add it.