Rebuilding KubeKraft.com

  • Hugo
  • HTMX
  • Alpine.js
  • AWS S3
  • CloudFront
  • Route53
  • OpenTofu
  • GitHub Actions

Context

The site you're looking at right now. Previously hosted on AWS Amplify with a broken contact page, a placeholder blog, and a build pipeline that had started failing without a clear root cause.

Problem

Amplify's managed convenience wasn't earning its premium at this traffic level, the content hadn't kept pace with what the business actually offers, and the build itself had grown fragile — a stale tracked lock file and unpinned Node version were the leading suspects for CI failures that couldn't be reproduced locally.

Approach

A ground-up rebuild: fresh Hugo templates, a Nord-and-brand-color design system, HTMX for the contact form and Alpine.js for the remaining interactivity, and a migration off Amplify to self-owned S3 + CloudFront + Route53 infrastructure defined in OpenTofu instead of a third-party platform's managed config.

Outcome

A real deploy pipeline the owner controls end to end, hosting cost cut roughly in half, and a site that documents its own infrastructure as one of the projects it's showcasing.

The recursive part

This project is the site rendering it. The static-hosting architecture described in Static Site Hosting on AWS is the same infrastructure running underneath kubekraft.com itself — not a separate demo built to look good in a portfolio.

What changed

The previous build ran on AWS Amplify with content that hadn’t kept pace with the business (an empty resume page, a blog of unedited starter-theme demo posts, a contact page that 404’d). The rebuild replaced the templates, the design system, and the hosting layer, and moved the infrastructure itself into version-controlled OpenTofu rather than a managed platform’s console configuration.

← All projects