Frederik Barbré
Fullstack engineer in Aarhus. One kid, and most of what I read and listen to runs on a machine in my own home.
The Kubernetes cluster in my home, defined entirely in a git repo.
It runs the 24 things my family and I actually use — photos, books, DNS, home automation. Nothing about it is configured by hand: ~1,600 lines of Terraform, two terraform applys and a Flux reconcile rebuild k3s, the platform layer, all 24 applications, and 68 secrets rehydrated from Bitwarden. Roughly 11 minutes to a config-complete cluster.
Nothing is applied by hand, so there is no state to lose. Flux reconciles the repo every minute and corrects drift, which makes the git history the only changelog that can be wrong.
Every credential is pulled from Bitwarden Secrets Manager at runtime by the sm-operator. The manifests describe which secret is needed, never its value — so the entire cluster definition can be read by anyone.
Every bit of config lives in git. Nothing hides in a dashboard, so an agent can ship a whole new app from one prompt.
A free marketing data hub at hub.conversio.dk. Connects ad, analytics and e-commerce sources into one live dashboard: real-time KPIs, period comparison, benchmarks and spend monitoring.
The agency site at conversio.dk — a fully statically generated Next.js front-end on headless WordPress. Editors keep the WP admin they know; the public site ships as pre-rendered pages with no WP runtime in front of visitors.
Published OAuth-integration library for Next.js. 20 providers — Google, Shopify, Spotify, Notion, Tesla. MIT.