Paw Ormstrup Madsen. Dansk

Projects

What I build in my spare time

I learn best by building real things that other people can use. These are the projects I work on next to my day job and WhistleSafe.

The Atomic Grid title screen: a robot in a dark hangar under the ATOMIC GRID logo An Atomic Grid arena from above: crates and pillars in a grid, robots in the corners and scorch marks on the floor

Game · Free in the browser

Atomic Grid

An online arena game inspired by Atomic Bomberman, written from scratch in C# and .NET 10 with no original assets or code. Decommissioned demolition robots fight to survive in fenced arenas in a dystopian machine world.

  • Up to 10 players in the same arena, and bots can fill the empty seats.
  • Create a lobby and share its four-letter code with the people you want to play with, or watch other games.
  • The server runs the game 100 times a second, and the browser shows it.
  • The graphics, levels, sound and music were made for the game with code and AI tools. Nothing comes from the original.
  • It runs on my own server at home.
Hearth's desktop app with a stream of a test picture in a window of its own Hearth's Linux app with channels, a conversation and users online, with demo data

Chat, voice and streaming · Invite-only

Hearth

My own chat, voice and game-streaming app for family and friends: a small Discord that runs on my server at home, without tracking, ads or cloud accounts.

  • Native apps for Linux, Windows and Android, and a web app for everything else.
  • Game streaming at 1440p60 with around 21 milliseconds of latency on the home network.
  • Built by AI agents that I steer, and it isn't done.

Other projects

Most of it runs on my own hardware at home.

  • A home lab run like productionRouter, NAS, reverse proxy and monitoring, documented in git. It's also where this site and Atomic Grid run.
  • Self-hosted AILanguage models on my own hardware, and an AI workshop portal that pupils at Danish schools use in class.
  • This siteHand-written HTML and CSS and a little JavaScript. No cookies, no tracking.