Skip to main content

Content Creation & Frontmatter Standards

By bamr87

Create blog posts, quests, documentation, and other content types with proper frontmatter, naming conventions, and file organization.

Estimated reading time: 6 minutes

This guide covers Phase 8 of the Quick Start — creating content across all IT-Journey collection types with proper frontmatter, naming, and organization.


Frontmatter — The Metadata That Powers Everything

Every content file starts with YAML frontmatter between --- fences. These fields control how the page is rendered, categorized, and discovered.

Minimum Required Frontmatter (All Content Types)

---
title: "Your Page Title"
---

That’s it — Jekyll will render the page. But for a production site, you’ll want much more.


Blog Posts

Posts live in pages/_posts/ and follow a strict naming convention.

Naming Convention

YYYY-MM-DD-slug-title-with-hyphens.md

Example: 2026-03-31-deploying-jekyll-to-azure.md

The date in the filename is used as the post’s publication date. The slug becomes part of the URL.

Post Frontmatter

---
title: "Deploying Jekyll to Azure Cloud"
layout: article
description: "Step-by-step guide to deploying a Jekyll site on Azure Static Web Apps."
date: 2026-03-31
lastmod: 2026-03-31
author: bamr87
categories:
  - devops
tags:
  - jekyll
  - azure
  - deployment
draft: false
image: /assets/images/azure-deploy-cover.png
mermaid: true
toc: true
---

Creating a Post

Option A — Manually:

touch pages/_posts/2026-03-31-my-first-post.md

Option B — Front Matter CMS:

  1. Open the Front Matter dashboard
  2. Click Create content
  3. Select the “posts” folder
  4. Fill in the fields visually
  5. The CMS generates a properly formatted file

Post Organization

Posts are auto-organized by category into subfolders:

pages/_posts/
├── ai & machine learning/
├── devops/
├── infrastructure/
├── tutorials/
└── web development/

Quests

Quests are gamified learning content with RPG-style progression. They live in pages/_quests/ organized by binary level directories.

Quest Directory Structure

pages/_quests/
├── 0000/    # Level 0000 — Foundation
├── 0001/    # Level 0001 — Beginner (Frontend)
├── 0010/    # Level 0010 — Intermediate
├── 0011/    # Level 0011 — Advanced
├── 0100/    # Level 0100 — Containers
├── 0101/    # Level 0101 — CI/CD
├── 0110/    # Level 0110 — Databases
├── 1000/    # Level 1000 — Cloud
├── 1001/    # Level 1001 — Kubernetes
├── 1010/    # Level 1010 — Monitoring
├── 1100/    # Level 1100 — Data Engineering
├── 1101/    # Level 1101 — ML/AI
├── 1110/    # Level 1110 — System Design
└── 1111/    # Level 1111 — Leadership

Quest Frontmatter

---
title: "Docker Container Fundamentals"
layout: quest
fmContentType: quest
description: "Master Docker container images, volumes, and networking. Learn to build, run, and orchestrate containers for modern application development."
date: 2026-03-31
lastmod: 2026-03-31
author: bamr87
permalink: /quests/0100/docker-container-fundamentals/
level: "0100"              # Binary level code
difficulty: "🟡 Medium"    # 🟢 Easy | 🟡 Medium | 🔴 Hard | ⚔️ Epic
quest_type: "main_quest"   # main_quest | side_quest | bonus_quest | epic_quest
primary_technology: "docker"
skill_focus: "devops"      # frontend | backend | devops | security | data-engineering
learning_style: "hands-on" # hands-on | conceptual | project-based
quest_series: "Container Mastery"
estimated_time: "60-75 min"
keywords:
  primary:
    - docker
    - containers
  secondary:
    - docker-compose
    - container-networking
platforms:
  - macOS
  - Windows
  - Linux
prerequisites:
  - "Terminal Fundamentals"
  - "Git Basics"
---

Binary Level System

Level Tier Focus Area
0000 Foundation OS setup, terminal, Git, Markdown, VS Code
0001 Beginner GitHub Pages, Jekyll, YAML, Liquid
0010 Intermediate JavaScript, CSS, Bootstrap, Bash
0011 Advanced Git workflows, plugins, SEO, analytics
0100 Containers Docker, Docker Compose
0101 CI/CD GitHub Actions, pipelines
0110 Databases SQL, data modeling
1000 Cloud AWS, Azure, IaC
1001 Kubernetes Pods, workloads, config
1010 Monitoring Prometheus, Grafana, ELK
1100 Data Eng. Stream processing, warehousing
1101 ML/AI Python data science, deep learning
1110 Architecture Microservices, design patterns
1111 Leadership Technical leadership, mentorship

Documentation

Docs live in pages/_docs/ and use the default layout.

Doc Frontmatter

---
title: "API Reference"
layout: default
description: "Complete API reference for the IT-Journey platform."
categories:
  - reference
---

Other Content Types

Quickstart Guides

pages/_quickstart/

Quickstart guides like this one use the default layout with a quickstart sidebar nav.

Notebooks

pages/_notebooks/

Jupyter notebooks converted to Markdown. By default they use the default layout (via _config.yml), but individual notebooks can set layout: journals in their frontmatter to use the journals layout instead.

Notes

pages/_notes/

Draft notes and code snippets using the default layout.

About Pages

pages/_about/

About pages, profiles, and feature descriptions.


Content Types Summary

Collection Folder Layout Naming Convention Permalink Pattern
Posts pages/_posts/ articles YYYY-MM-DD-slug.md /posts/YYYY/MM/DD/slug/
Quests pages/_quests/ quest quest-name.md in level folder /quests/category/name/
Docs pages/_docs/ default descriptive-name.md /docs/category/name/
Quickstart pages/_quickstart/ default descriptive-name.md /quickstart/name/
Notebooks pages/_notebooks/ journals name.md or converted .ipynb /notebooks/path/name/
Notes pages/_notes/ default descriptive-name.md /notes/path/name/
About pages/_about/ default descriptive-name.md /about/category/name/

Best Practices

  1. Always include title and description — they drive SEO and site navigation
  2. Set draft: true for work in progress — draft pages are hidden in production
  3. Use categories and tags consistently — they power filtering and navigation
  4. Add lastmod dates — helps search engines and readers track freshness
  5. Use Front Matter CMS for visual editing — reduces frontmatter errors
  6. Follow naming conventions — especially the YYYY-MM-DD date prefix for posts

What’s Next

Next Step Guide
Style your site with skins and custom CSS Styling & Navigation
Run the site locally with Docker Local Development
Deploy to GitHub Pages Deployment

IT-Journey Docs: Frontmatter Standards · Content Guidelines

IT-Journey Quests: Markdown Mastery · Forge Your Character