Skip to content

feat: Implement Markdown-based blog for patchpilot.dev #14

@ProduktEntdecker

Description

@ProduktEntdecker

Summary

Implement a Markdown-based blog system for patchpilot.dev, similar to the implementation in produktentdecker.com (see PR #60).

Context

PatchPilot needs a blog/docs section to publish:

  • Security tutorials
  • Comparison articles (e.g., "Security Tools for AI Coding Assistants")
  • Release notes and changelogs
  • Integration guides

Reference Implementation

produktentdecker.com PR #60: https://github.com/ProduktEntdecker/produktentdecker.com/pull/60

Key components to replicate:

  • content/blog/ directory for Markdown posts with frontmatter
  • scripts/build-blog.mjs build script using gray-matter and marked
  • src/types/blog.ts TypeScript interfaces
  • src/data/blog-posts.ts auto-generated at build time
  • Integration with main build process

Frontmatter Schema

---
title: "Article Title"
slug: "url-path"
excerpt: "Short description for SEO"
publishedAt: 2025-01-09
author: "Dr. Florian Steiner"
readTime: "8 min"
tags:
  - Security
  - AI Coding
coverImage: "https://..."
featured: false
---

Workflow

Obsidian (write) → content/blog/ (copy) → npm run build → Deploy

First Blog Post Ready

A draft article is already prepared:

  • Title: "Security Tools for AI Coding Assistants: A Complete Comparison (2025)"
  • Location: Obsidian vault Blog Drafts/patchpilot.dev/

Acceptance Criteria

  • content/blog/ directory structure
  • Build script processes Markdown to JSON/TS
  • Blog listing page at /blog
  • Individual post pages at /blog/{slug}
  • SEO meta tags from frontmatter
  • Read time auto-calculation
  • Featured post highlighting
  • Mobile-responsive design

Technical Notes

  • Use same dependencies as produktentdecker.com (gray-matter, marked)
  • Auto-calculate read time (~200 words/min)
  • Sort posts by date (newest first)
  • Consider RSS feed for future

Reference: produktentdecker.com uses React + Vite. Adapt as needed for patchpilot.dev's stack.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions