Hey everyone,
I wanted to share a project I’ve been building called Hexpand. It’s a real-time multiplayer territory conquest game played on a real map of Earth. You start with one hexagon, your territory expands automatically tick by tick, and you try to capture cities or backstab your friends using long-range planes.
I’m not going to pretend this is the next Civilization or the greatest game ever made. It’s a simple, fast-paced game meant to be played in 5 to 20-minute bursts. But it works, it’s fun, and I’m proud of how it came together.
The motivation was incredibly basic: I took one library for maps (MapLibre), another library for hexagons (H3), and combined them. I wanted to see if I could make a map game where oceans actually wall you in, peninsulas create natural choke points, and island nations are a nightmare to invade.
Once the prototype worked, I got a bit carried away and ended up building six different game modes, bot filling, solo challenges, global leaderboards, and daily quests.
As a solo dev, I didn't have the budget or the team for massive infrastructure, so I had to get creative:
Frontend: Built with SvelteKit and Tailwind.
The Engine: Real-time game sessions run on a custom Bun multiplayer server hosted on a cheap Hetzner VPS. If that fails or gets overloaded, it seamlessly falls back to Cloudflare Durable Objects.
The Steam Trick: I wanted a desktop version for Steam, so I wrapped the web app using Tauri (Rust). The cool part about how I set it up is that the Tauri desktop binary just points to the web app. This means I can push frontend updates instantly via Cloudflare without forcing players to download a Steam update every single time I fix a typo.
I'm releasing Hexpand on Steam soon, mostly because I actually can. It’s a bit of a milestone for me to see something I built sitting on a major storefront next to AAA games.
That said, I’m treating this basically as a non-profit passion project. There’s no aggressive monetization, no forced account creation (you can literally just play as a guest in a browser to test it), and no corporate backing. I just want people to play it, enjoy the maps, and maybe ruin a few friendships over a broken 5-minute alliance.
It’s already live on the web, CrazyGames, and Itch if you want to play a quick round in your browser: