Blog
Personal projects, built after hours. Sorted newest first.
Rebuilding punkcake.net: from Lovable and headless WordPress to Astro on Cloudflare
How this site went from a Lovable app on a Node server, reading posts from WordPress on every request, to static pages on Cloudflare with a git-based editor, perfect Lighthouse scores and almost nothing to maintain.
- Astro
- Cloudflare
- Sveltia CMS
- Performance
VPN port forwarding without opening my router: gluetun, Proton and slskd
How I gave a peer-to-peer client an open port through ProtonVPN, then replaced my first working version because of a security setting I didn't like.
- WireGuard
- ProtonVPN
- Docker
- Networking
A private music server: from a 15-tool plan to five containers
How I built a self-hosted music server on a tiny ThinkStation: Navidrome, automated tagging, Cloudflare Zero Trust for remote access, and nothing open on my router.
- Docker
- Navidrome
- Cloudflare Zero Trust
- Self-hosting
My desktop in a git repo: reusable dotfiles, and the road to NixOS
I moved my hand-built niri and Noctalia desktop into a private git repo, so any new machine can look and feel like mine. Next step: the whole system as code.
- Niri
- Noctalia
- Linux
- Dotfiles
From a self-hosted AI lab to one sandboxed Claude Code
I built a self-hosted AI lab in rootless Podman, with OpenRouter models and my own Noctalia plugins. Then I right-sized it to one AI coding assistant in a sandbox designed around a threat model: my machine stays mine, and nothing goes live without my yes.
- Claude Code
- Podman
- Self-hosting
- Security