Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Workflow:Testtimescaling Testtimescaling github io GitHub Pages Course Progression

From Leeroopedia
Knowledge Sources
Domains CI_CD, Education, GitHub_Pages
Last Updated 2025-04-13 00:00 GMT

Overview

Event-driven GitHub Skills course that guides learners through setting up a GitHub Pages site with Jekyll, using automated step progression via GitHub Actions workflows.

Description

This workflow implements an interactive learning course built on the GitHub Skills platform. It teaches users how to create and configure a GitHub Pages website using Jekyll. The course consists of six sequential steps (0 through 5), each with its own instruction file and corresponding GitHub Actions workflow. When a learner completes a step's required action (e.g., enabling Pages, editing a config file, creating a blog post), the associated workflow detects the change and automatically advances the course to the next step by updating a step tracker file and modifying the README to show new instructions.

Goal: A fully configured GitHub Pages site with Jekyll, plus hands-on experience with GitHub Pages and Jekyll basics.

Scope: From initial repository creation through branch setup, Pages enablement, site configuration, homepage customization, blog post creation, and PR merging.

Strategy: Uses event-driven GitHub Actions workflows that watch for specific triggers (push events, page builds, file changes) and automatically advance the course step using the skills/action-update-step action.

Usage

Execute this workflow when you have created a new repository from this template and want to learn GitHub Pages fundamentals. The course begins automatically when you create the repository. Follow the instructions displayed in the README at each step, and the automated workflows handle progression.

Execution Steps

Step 0: Welcome and Branch Setup

When the learner creates a repository from the template, the welcome workflow triggers automatically on push to main. It creates a new branch called my-pages, initializes Jekyll configuration and homepage files, and advances the course to Step 1.

Key considerations:

  • Only triggers when the repository is not the template itself
  • Creates _config.yml and index.md as starter files
  • Opens a pull request for the learner to work with

Step 1: Enable GitHub Pages

The learner navigates to repository Settings and enables GitHub Pages. The workflow listens for the page_build event, which fires when Pages is successfully enabled and the first build completes.

Key considerations:

  • Triggered by the page_build event, not a file push
  • Validates that the current step is 1 before advancing
  • Checks out the my-pages branch for the step update

Step 2: Configure the Jekyll Site

The learner edits the _config.yml file on the my-pages branch to add site metadata (title, theme, description). The workflow detects pushes to the branch that modify _config.yml.

Key considerations:

  • Watches for pushes to the my-pages branch specifically
  • Validates that _config.yml was modified in the push
  • Learner sets Jekyll theme and site properties

Step 3: Customize the Homepage

The learner modifies index.md to personalize their homepage content using Markdown and Jekyll front matter. The workflow detects pushes that include changes to index.md.

Key considerations:

  • Teaches Markdown basics through hands-on editing
  • Learner adds custom content to the homepage
  • Validates the file was modified before advancing

Step 4: Create a Blog Post

The learner creates a new blog post file in the Jekyll _posts directory following the required naming convention (YYYY-MM-DD-title.md). The workflow detects the new file addition.

Key considerations:

  • Teaches Jekyll blog post conventions (front matter, naming)
  • File must be in the _posts/ directory
  • Demonstrates content creation in a static site workflow

Step 5: Merge the Pull Request

The learner merges the my-pages pull request into the main branch. The workflow detects the merge event and marks the course as complete, showing a finish message.

Key considerations:

  • Triggered by the pull request merge event
  • Advances to the final state (step X)
  • Displays completion instructions and next steps

Execution Diagram

GitHub URL

Workflow Repository