This Website
A self-hosted personal site built with Astro and Tailwind, served by Caddy and exposed publicly via Cloudflare Tunnel.
Why Build It
The homelab started as a purely personal project โ self-hosting services, learning Linux, breaking things and fixing them, wanted somewhere to document it all. Not just as a record for myself but as a showcase of what's been built, the decisions made along the way and the problems solved. I imagine this will only be for me but if anyone finds anything useful from it thats cool to. :)
The Stack
The site is built with Astro โ a static site framework that builds to pure
HTML and CSS with zero JavaScript overhead unless explicitly added. It was chosen over a
traditional CMS like Ghost or WordPress because the goal was a fully custom design with
complete control over layout and structure, not a template with limited flexibility.
Astro fits that well โ pages and components are written directly in .astro files,
content lives as markdown where needed, and the build output is fast static files.
Styling is handled by Tailwind CSS v4 using utility classes directly in the markup. Caddy serves the built static files โ it's simpler to configure than Nginx and handles HTTPS automatically.
Hosting
Everything runs inside websiteCT โ a lightweight Debian LXC container on Proxmox, allocated minimal resources since a static site barely registers on the host. Public access is handled by a Cloudflare Tunnel โ an outbound connection from the container to Cloudflare's network that means no ports need to be opened on the router and the home IP is never exposed.
Development Workflow
The site is developed directly on the container over VS Code Remote SSH, with the Astro dev server running locally for live preview. Changes are version controlled in a GitHub repository. When a new build is ready, a deploy script pulls the latest changes, runs the Astro build and reloads Caddy โ keeping the deployment process simple and repeatable.
What's Next
The site is still early. The project pages are being filled out as the homelab grows and the blog section will be used for writeups and guides as things get documented properly. The longer term goal is for it to become a reasonably complete showcase of everything running in the homelab. A work in progress much like everything else.