GITHUB CMS

GITHUB IS
YOUR DATABASE.

md0 CMS connects directly to your GitHub repository. Edit markdown files visually. Every save auto-commits. No deploy step. No configuration files added to your repo.

WHY GITHUB

Why GitHub as a CMS?

Version History Built-In

Every content change is a Git commit. See exactly who changed what and when. Revert to any previous version instantly. No extra tooling or paid history add-on.

No Vendor Lock-In

Your content lives in your GitHub repository as plain markdown. Stop using md0 CMS and your files stay exactly where they are. No export, no migration.

Works with GitHub Pages

GitHub Pages deploys from your repo automatically. Push a commit (via md0 CMS) and GitHub Actions or Pages rebuilds your site. No separate deploy pipeline needed.

Team Collaboration via PRs

Content editors write drafts. Developers review pull requests. Merge when ready. Your existing GitHub collaboration workflow applies to content too.

THE CONNECTION

How it connects

No webhooks. No API keys. No configuration files added to your repo. Just three steps.

1

OAuth Login

Click "Connect GitHub" and authorize md0 CMS via GitHub OAuth. Grant repository read/write access. No personal access tokens to create or rotate.

2

Select Repo and Branch

Choose from your GitHub repositories. Pick the branch you want to manage content on, typically main or a dedicated content branch.

3

Define Collections

Map path glob patterns to content types. Set frontmatter schemas. Start editing. md0 CMS reads and writes files directly via the GitHub API.

Nothing added to your repo.

md0 CMS adds no config files, no cms.json, no .cms/ folder. Your repository stays exactly as it is. The CMS configuration lives in md0, not in your codebase.

CONTENT TYPES

What you can edit

Markdown and MDX Files

Any .md or .mdx file in your repository. Blog posts, documentation pages, landing page content, changelogs.

# Example paths

content/blog/*.md

docs/**/*.mdx

pages/about.md

Frontmatter Fields

Define a schema per collection. md0 CMS renders a structured form for frontmatter fields: title, date, tags, author, category, custom fields.

---

title: My Post

date: 2025-01-01

tags: [cms, github]

---

Collections Map to Path Patterns

A collection is a name plus a glob pattern pointing to files in your repo. Create as many collections as your site needs. Each collection can have its own frontmatter schema, naming convention, and default values.

Blog Posts

content/posts/**/*.md

Docs Pages

docs/**/*.mdx

Team Members

data/team/*.md

GITHUB PAGES

Works with GitHub Pages

GitHub Pages deploys automatically whenever you push to your repository. When you save content in md0 CMS, it commits to your repo, which triggers a new GitHub Pages build. Your site is updated without any manual deploy step.

This same flow works with any SSG deployed via GitHub Actions: Jekyll, Hugo, Astro, Eleventy. The commit md0 CMS creates is all GitHub Actions needs to kick off a build.

Write in md0 CMS
Auto-commit to GitHub
GitHub Actions runs
Site is live
v1.4
Current Version
FREE
Public Repos
ZERO
Config Files Added

YOUR GITHUB REPO
DESERVES A CMS.

Connect your repository in under 2 minutes. Edit markdown visually. Free for public repos.

No credit card required · 2-minute setup · Free for public repos