Getting Started with This Blog Pipeline

Published on July 13, 2025 // 1 min read
Getting Started with This Blog Pipeline

Welcome to the automated blog. Posts are written in Obsidian as Markdown and pushed to the dev branch, where a GitHub Actions workflow converts them to HTML and deploys to dev.vazid.live.

How it works

The build script reads every file in blogs-src/, parses its frontmatter, and renders the body with marked. Each post becomes a standalone HTML file styled with blog-post.css.

[!note] This box is an Obsidian-style callout. Use > [!note], > [!tip], > [!warning], or > [!danger] at the start of a blockquote.

Writing content

Standard Markdown works — lists, bold, italic, links, and more.

# Build locally to preview
npm run dev

Code highlighting

Fenced code blocks are highlighted with highlight.js:

name: deploy
on:
  push:
    branches: [dev, main]

Diagrams with Mermaid

Fenced ```mermaid blocks render as diagrams:

flowchart LR A[Obsidian .md] --> B(build-blogs.mjs) B --> C[blogs/*.html] C --> D[(GitHub Pages)]

Promoting to production

When a post looks good on dev.vazid.live, merge dev into main and it ships to vazid.live.

[!tip] Keep images in blogs/assets/ and reference them with relative paths so they deploy cleanly.