Skip to content
Deploying With YggdrasilHow a push on GitHub becomes a running container on my server: one catalog file describing systems, … Oct 21, 2026 · 6 min Documentation SitesHow I build and publish documentation: Hugo with the Docsy theme as a Hugo module, built and checked by GitHub … Oct 21, 2026 · 3 min How I Host My ProjectsEach kind of project I build has one place it lives: anything with a backend runs in containers on a … Oct 21, 2026 · 3 min Landing PagesHow I build and host marketing and product pages: Next.js with shadcn/ui and Tailwind CSS, deployed by Vercel … Oct 21, 2026 · 2 min LibrariesHow I publish reusable .NET packages: package metadata in the project file, a release flow that ends in a … Oct 21, 2026 · 3 min Sizing the ServerA sizing model for my self-hosted stack: a reservation and a limit for every service, from Traefik and Jenkins … Oct 21, 2026 · 4 min Static SitesHow I build and host sites with no server at all, such as portfolios and brochure sites: Astro, or Next.js … Oct 21, 2026 · 2 min The Platform: Traefik, Monitoring and the ConsoleThe shared stack every application on my server sits behind: Traefik with a Let's Encrypt wildcard certificate … Oct 21, 2026 · 5 min The ServerThe single Ubuntu VPS that runs every self-hosted application: its size, how SSH is locked down, how … Oct 21, 2026 · 4 min Web APIsWhat an ASP.NET Core API looks like to my server: a multi-stage Docker image running as a non-root user, … Oct 21, 2026 · 4 min