TL;DR#
We deployed a lightning-fast static site with zero hosting costs using:
- 🎯 Hugo static site generator
- 🐡 Blowfish theme (clean, fast, developer-focused)
- 🤖 GitHub Actions for CI/CD
- 📦 GitHub Pages for hosting
- 🔒 Custom domain with HTTPS
Why This Stack?#
After years of over-engineered solutions (and fleeing the WordPress war 👀), we wanted something different for our web presence:
- Blazing fast load times
- Zero maintenance overhead
- Git-based workflow
- Actual cost: $0/month (yes, really! 💸)
Prerequisites#
- Install hugo
- git
- Desire to kill a LAMP Stack (killed a LAMP stack 😈🔥💀)
- Basic undestanding of Markdown
The Technical Setup#
1. Development Environment#
hugo new site frybad
cd frybad
git init
git submodule add https://github.com/nunocoracao/blowfish.git themes/blowfish
See Blowfish installtion docs for alternative ways to install.
2. Setup GitHub Actions and Pages#
See the very straightforward Hugo Docs to host on GitHub Pages
3. Performance Results 📊#
- 100/100 PageSpeed score
- ~50ms Time to First Byte
- ~150ms Fully Loaded
- 0 external JavaScript dependencies
4. (Optional) Use a custom domain 🌐#
Connecting your custom domain to GitHub Pages is straightforward but some attention to DNS settings. Here’s the process broken down:
1. Domain Verification#
First, verify your domain ownership in GitHub. This requires adding a temporary CNAME record to your domain’s DNS settings. GitHub will provide the specific record details during the verification process.
2. DNS Configuration#
After verification, you’ll need to configure your DNS settings with your domain provider:
- Add A records to point your domain to GitHub Pages’ IP addresses
- Add AAAA records for IPv6 support
- Optionally, add a CNAME record for subdomains (e.g., www)
These records ensure visitors reach your GitHub Pages site when accessing your domain. See GitHub Docs on DNS records
3. GitHub Pages Setup#
In your repository settings under Pages, enter your custom domain and enable HTTPS (available after DNS propagation). This final step connects everything together.
The Real Benefits ✨#
- 📝 Git-Driven Content: Write posts in Markdown, push to main, site updates automatically. No block editor drama here.
- 🛡️ Zero Attack Surface: No databases, no servers, no need for 50+ plugins to make things work.
- 📈 Infinite Scalability: CDN-delivered static files can handle any traffic spike.
- ⚡ Hugo is awesome! Analytics, I18n, and other features that don’t require a subscription plan.
Cost Breakdown 💰#
- Hugo: $0
- GitHub Actions: $0 (included in organization plan)
- GitHub Pages: $0
- Domain: ~$12/year (only direct cost)
- Our time: A few hours
The best way to modernize is to simplify and the best things in life are free. For anybody watching the WordPress ecosystem in 2025. Hope this helps 💙