CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Project Overview

This is a Jekyll-based blog website hosted on GitHub Pages, focused on Azure cloud management and Microsoft technologies. The site uses the Minimal Mistakes theme and is published at https://mscloud.be.

Development Environment

Prerequisites

Building and Running

Local development server:

bundle exec jekyll serve

The site will be available at http://localhost:4000 with live reload enabled.

Build the site:

bundle exec jekyll build

The compiled site will be in the _site directory.

JavaScript asset compilation:

npm run build:js

This uglifies JavaScript files and adds banners. The watch command is:

npm run watch:js

Installing Dependencies

Ruby dependencies:

bundle install

Node dependencies:

npm install

Site Architecture

Content Structure

Blog posts: _posts/

Static pages: _pages/

Drafts: _drafts/

Configuration Files

_config.yml: Main Jekyll configuration

_data/navigation.yml: Site navigation menu structure

_data/authors.yml: Author profiles for multi-author support

Theme Customization

_includes/: Custom includes and theme overrides

_sass/: Custom styles (if present)

assets/: Static assets

Blog Post Guidelines

Front Matter Template

---
title: "Post Title Here"
author: Author Name
categories:
  - Azure
tags:
  - Azure DevOps
  - PowerShell
header:
  og_image: /assets/images/image-name.PNG
---

Content Conventions

Writing Style Guide

When creating or editing blog posts, follow these established writing patterns:

Structure and Organization

Standard post structure:

  1. Opening with context - Start with a real-world scenario, customer need, or practical problem
    • Example: “One of my customers is on a journey to re-architect old on-premises web applications…”
    • Example: “We use ARM outputs quite extensively in our Azure DevOps pipelines…”
  2. Problem statement - Clearly define the challenge or issue
    • Use section headers like ## Issue, ## Challenge, or ## Introduction
    • Explain the “why” before diving into the “how”
  3. Solution walkthrough - Step-by-step implementation
    • Use numbered lists for sequential steps
    • Break complex processes into subsections with ## or ### headers
    • Common section names: ## Setup, ## Requirements, ## Configuration
  4. Results/verification - Show the outcome
    • Section often titled ## Running the pipeline, ## Result, or ## Conclusion
  5. Closing - End with conclusion section and sign-off
    • Use ## Conclusion header
    • Sign with “Alex”, “Alexandre”, or “Hope this helps, Alex”

Tone and Voice

Conversational and inclusive:

Direct and honest:

Content Patterns

Emphasis techniques:

Notes and warnings:

Code and technical content:

External references:

Visual aids:

Technical Writing Approach

Problem-solution format:

Practical recommendations:

Troubleshooting insights:

Formatting Standards

Lists and bullets:

Headers:

Inline formatting:

Sign-off Patterns

Common closings:

GitHub Pages Deployment

Jekyll Plugins

Configured plugins (GitHub Pages compatible):

Theme Information

Common Tasks

Create a new blog post:

  1. Create file in _posts/ with format YYYY-MM-DD-title.md
  2. Add front matter with title, author, categories, tags
  3. Write content in markdown
  4. Test locally with bundle exec jekyll serve

Update navigation: Edit _data/navigation.yml

Modify site configuration: Edit _config.yml (requires server restart to see changes)

Add images: Place in /assets/images/ and reference with https://mscloud.be/assets/images/filename