🔧 Kvblog: Building My Own AI-Powered Blog CMS
Kvblog is a custom-built, full-stack .NET minimal blog CMS — powered by AI tools, running on Docker containers on Hetzner server.
Source code here: Kvblog github repository
🧠 Why Kvblog?
“AI and chill” is running on Kvblog, which is my attempt to resurrect my old WordPress blog — this time built from scratch with C#, .NET, and a whole lot of AI assistance.
I’d been meaning to do it for ages, but, you know… life, work, and other side projects always got in the way.

What changed? I stopped doing everything myself.
With AI tools like Codex and ChatGPT, I now get to skip the boring stuff that used to eat up my evenings:
- Setting up servers 🧱
- Debugging Docker typos 🐳
- Fighting CI/CD configs ⚔️
- Basic code
Now I just offload all that to my AI minions (kinda), and focus on what I actually enjoy.
🤖 How AI Fits In
“I know what I want — and my AI minions (kinda) know how to give it to me.”
While writing this blog, I literally asked Codex to implement a search endpoint for Kvblog.Api
. After a couple of prompts? Done. I’m not aiming for Google-grade performance — I just want working features without the grind.
Getting basic functionality built while I’m writing or experimenting elsewhere? That’s the kind of workflow I never want to give up.
AI and chill. And if one day AI replaces me? Cool — I’ll be baking pizza with humanoid robots.
🏗️ Infra Overview
True story: I once spun up a small Azure App Service + SQL Database for a side project. I thought I had everything on the "Free" or "Basic" tiers. A few weeks later, I got hit with a £400 bill. Turned out the SQL instance wasn’t on the cheapest tier like I assumed, and I had accidentally enabled geo-redundancy on something I didn’t even need. Microsoft was kind enough to refund it — “one-time courtesy” because I’m such a great customer or whatever — but I learned my lesson. Even when you try to be careful, Azure’s pricing complexity is like playing Minesweeper with your wallet. Yes Azure’s great for companies with deep pockets. Kvblog is not that. So Hetzner server and Docker it is...
Let’s break down how this thing is built:
💻 Hosting: Hetzner FTW
- Provider: Hetzner Cloud
- Setup: Docker + Docker Compose + external SSD volume
- Cost: ~£4/month
- Bonus: No weird billing surprises
🐘 Database: PostgreSQL
- Free ✅
- Open source ✅
- Works beautifully with EF Core ✅
🔐 Authentication: Auth0
Sure, it’s just a blog. But what if someone hijacks the admin panel and starts posting spam in my name, /s "oh no! what a catastrophy". So I went with Auth0:
- Secure
- Easy role-based access
- Great docs and community
- Already familiar with it
- Bonus: GPT understands how to work with it too
Yeah, it’s probably overkill for a blog — but a fun, safe, no-regrets kind of overkill.
🖼️ Frontend: Razor Pages (for now)
I default to a Client–API split. Even though Razor is fine for now, the API is fully ready for a future React or Blazor frontend if I feel like switching things up later.
Always good to leave doors open 🔓
⚙️ CI/CD: GitHub Actions
Just push the code — and GitHub Actions handles:
- Build 🛠️
- Test ✅
- Deploy 🚀
🧘♂️ Philosophy: Minimal Effort, Maximum Play
I wanted a stack that’s:
- Cheap
- Flexible
- Low maintenance
- Fun to tinker with
And most importantly: Free from the painful boilerplate work I’ve done 100 times before.
Kvblog isn’t just a blog — it’s a testbed for AI-assisted workflows.
💬 Final Thoughts
So that’s Kvblog. A tiny .NET CMS project that:
- Avoids cloud pricing traps ☁️💸
- Embraces AI coding tools 🤖
- Keeps things minimal, clean, and fun ✨
And if you want a deep dive into the codebase, check it up Kvblog github repository