Post

Building a Personal Blog for Free: My Setup and Process

Building a Personal Blog for Free: My Setup and Process

Blog Ingredients

I recently created this blog that costs me nothing to run and allows me to edit and publish without editing code. It’s fast, customizable, and has a clean editing interface — all without monthly hosting fees. Here’s the exact setup and process I used.

The Stack

  • Website: Jekyll + Chirpy theme
  • Hosting: GitHub Pages (free)
  • CMS: Sveltia CMS (successor to Netlify CMS)
  • Authentication: Cloudflare Workers (free tier)
  • Domain: Namecheap
  • Cost: $0/month

Why This Setup Works for Me

  • No ongoing costs – Uses free service tiers.
  • Full control – All content and code are mine.
  • User-friendly editing – CMS works on desktop and mobile.
  • Fast loading – Static site generation ensures performance.
  • Clean design – Chirpy theme provides a professional look.
  • Version control – All content is tracked in Git.

The Setup Process

1. Jekyll + Chirpy Theme

Jekyll powers the blog and the Chirpy theme adds:

  • Light/dark mode toggle
  • Search functionality
  • Table of contents
  • Syntax highlighting
  • SEO optimization
  • Progressive Web App support

2. GitHub Pages Hosting

Steps:

  1. Create a GitHub repository
  2. Enable GitHub Pages
  3. Use GitHub Actions for Jekyll builds

3. Sveltia CMS for Content Editing

Sveltia CMS provides:

  • Clean interface
  • Mobile-friendly editing
  • Rich text + Markdown support
  • Image management
  • Git-based commits directly to the repo

4. Authentication with Cloudflare Workers

A simple Cloudflare Worker handles GitHub OAuth authentication and secure token exchange. It’s free and lightweight.

My Blogging Workflow

  1. Visit /admin on my blog
  2. Log in with GitHub OAuth
  3. Write or edit in the CMS
  4. Save — commits to GitHub
  5. GitHub Actions rebuilds and deploys the site

What I Learned

  • GitHub Actions make Jekyll much more flexible.
  • Static sites are fast and low-maintenance.
  • Authentication was trickier than I first assumed.
  • Free-tier services can work together for a professional result.

Final Thoughts

If you have some technical comfort and want a blog that’s fast, reliable, and free to run, this setup is worth considering.

Resources: