Post

Building a Personal Blog with Jekyll and Chirpy

Building a Personal Blog with Jekyll and Chirpy
Prerequisites
  1. GitHub/GitLab account
  2. Domain configured in Cloudflare

Jekyll is a static site generator that transforms plain text into modern websites. In this guide, we’ll use the Chirpy theme and deploy to Cloudflare Pages.

1. Create Repository from Chirpy Template

  1. Visit Chirpy Starter
  2. Click Use this templateCreate a new repository
  3. Name your repository (e.g., my-blog)

2. Configure Cloudflare Pages

  1. Log in to Cloudflare Dashboard
  2. Navigate to Workers & Pages
  3. Create new application: Create application > Pages > Connect to Git
  4. Connect your GitHub/GitLab account
  5. Select your created repository
  6. Configure build settings:
    • Framework preset:
      1
      
       Jekyll
      
    • Environment variables:
      1
      
       BUNDLE_WITHOUT = ""
      
  7. Click Save and Deploy
  8. Wait for build completion (typically 2-5 minutes)

ℹ️ If the site doesn’t load immediately, check deployment status in Cloudflare’s build logs.

3. Set Up Custom Domain

  1. In your Cloudflare Pages project, go to Custom domains
  2. Click Set up a custom domain
  3. Enter full domain (e.g., blog.example.com)
  4. Confirm DNS configuration (CNAME record will be auto-created)
  5. Wait for domain activation (typically 1-10 minutes)

4. Customize Your Blog

  1. Clone repository locally:
    1
    2
    
    git clone https://github.com/<your-username>/<repository>.git
    cd <repository>
    
  2. Edit _config.yml
    1
    2
    3
    4
    
    title: "My Tech Blog"         # Site title
    tagline: "Adventures in Homelabbing"  # Subtitle
    timezone: Europe/Kyiv    # Timezone
    avatar: /assets/img/avatar.png  # Path to avatar
    

5. Create Your First Post

  1. In _posts folder, create file with format YEAR-MONTH-DAY-title.md:
    Example: 2024-02-12-my-first-post.md

  2. Add metadata:

1
2
3
4
5
6
7
8
9
10
11
---
layout: post
title: "My First Post"
date: 2024-02-12 14:00:00 -0500
categories: homelab
tags: first-post, jekyll
---

## Welcome to My Blog!

This is my first post using Jekyll and Chirpy!
  1. Push changes:
1
2
3
git add .
git commit -m "Add first post"
git push

The site will auto-update within 1-2 minutes after Cloudflare syncs.

🎉 Congratulations! You’ve successfully deployed your blog with a custom domain and published your first post!

This post is licensed under CC BY 4.0 by the author.