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
Table of Contents
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:
- Open the Front Matter dashboard
- Click Create content
- Select the “posts” folder
- Fill in the fields visually
- 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
- Always include
titleanddescription— they drive SEO and site navigation - Set
draft: truefor work in progress — draft pages are hidden in production - Use categories and tags consistently — they power filtering and navigation
- Add
lastmoddates — helps search engines and readers track freshness - Use Front Matter CMS for visual editing — reduces frontmatter errors
- Follow naming conventions — especially the
YYYY-MM-DDdate 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