Zero Signup ToolsFree browser tools

Developer Tools

Markdown Frontmatter Editor

Parse, validate, and edit YAML or TOML frontmatter in any Markdown or MDX file. View as JSON, fix errors with line numbers, and convert between flavors.

Markdown frontmatter editor and validator

Samples

Valid

Valid YAML frontmatter

9 top-level keys, 41 body words.

Flavor: YAMLKeys: 9Body words: 41Body lines: 7

Quick edit

Edit the most common frontmatter fields. Changes apply to the output panels below.

draft

Parsed as JSON

The frontmatter as a JSON object. Useful for build pipelines and snapshot tests.

{
  "title": "Why we ship Markdown",
  "date": "2026-06-15T10:00:00-07:00",
  "draft": false,
  "description": "How our content pipeline turned a folder of .md files into a 200-page site without a CMS.",
  "tags": [
    "markdown",
    "hugo",
    "static sites"
  ],
  "categories": [
    "engineering",
    "content"
  ],
  "author": "Jamie",
  "weight": 12,
  "slug": "why-we-ship-markdown"
}

Frontmatter (YAML)

Clean, normalized output ready to drop into the top of your Markdown file.

---
title: Why we ship Markdown
date: 2026-06-15T10:00:00-07:00
draft: false
description: How our content pipeline turned a folder of .md files into a 200-page site without a CMS.
tags:
  - markdown
  - hugo
  - static sites
categories:
  - engineering
  - content
author: Jamie
weight: 12
slug: why-we-ship-markdown
---

Full document

Frontmatter (current flavor) plus the body, ready to save as a .md or .mdx file.

---
title: Why we ship Markdown
date: 2026-06-15T10:00:00-07:00
draft: false
description: How our content pipeline turned a folder of .md files into a 200-page site without a CMS.
tags:
  - markdown
  - hugo
  - static sites
categories:
  - engineering
  - content
author: Jamie
weight: 12
slug: why-we-ship-markdown
---
We started with a folder. Every author kept a copy of the same notes, and every
publish meant a round of copy-paste into the production CMS. So we tried
something silly: ship the folder.

The rest of the article goes here.

Body only

The Markdown content with the frontmatter block removed.


We started with a folder. Every author kept a copy of the same notes, and every
publish meant a round of copy-paste into the production CMS. So we tried
something silly: ship the folder.

The rest of the article goes here.

Fields

KeyTypePreview
titlestringWhy we ship Markdown
datedate2026-06-15T10:00:00-07:00
draftbooleanfalse
descriptionstringHow our content pipeline turned a folder of .md files into a 200-page site without a CMS.
tagsarray(3)["markdown","hugo","static sites"]
categoriesarray(2)["engineering","content"]
authorstringJamie
weightinteger12
slugstringwhy-we-ship-markdown

How to use

  1. Paste your Markdown or MDX file into the source area, or click a sample (Hugo YAML, Hugo TOML, Jekyll, or a broken sample) to load one.
  2. Read the verdict panel for a pass or fail signal, the flavor (YAML or TOML), the top-level key count, the body word and line counts, and any errors or warnings tied to specific lines.
  3. Use the Quick edit form to change title, description, date, draft, or tags. Edits apply to every output panel without modifying the source until you click Write edits into source.
  4. Copy the Parsed as JSON view for build pipelines, the Frontmatter block for pasting back into a file, the Full document for saving a new .md or .mdx, or the Body only when you need just the prose.
  5. Click Convert to TOML or Convert to YAML to switch the frontmatter to the other flavor without retyping the metadata.

About this tool

Markdown Frontmatter Editor is a free in-browser parser, validator, and editor for the metadata block at the top of a Markdown or MDX file, the block that every modern static site generator reads to render a post: Hugo, Jekyll, Astro, 11ty (Eleventy), Hexo, Gatsby, Docusaurus, MkDocs, VitePress, and Next.js MDX all consume it. The detector accepts both common syntaxes: YAML delimited by a leading and closing line of three dashes (the default for Jekyll, Astro, 11ty, Hexo, Docusaurus, MkDocs, MDX, and Hugo since 0.32) and TOML delimited by a leading and closing line of three plus signs (Hugo, Zola, Cobalt). The parser is a hand-written subset built for real-world frontmatter rather than full YAML or TOML 1.0 conformance, so it handles the value shapes people actually use: quoted and unquoted strings, integer and float numbers (with underscore separators in YAML), booleans (true, false, yes, no, on, off in YAML; true, false in TOML), null aliases (null, tilde, empty, None), date and RFC 3339 datetime values that survive the round-trip without quoting, flow arrays like a comma-separated list in square brackets, YAML block lists written as one dash-prefixed item per line, TOML inline tables, and nested YAML mappings via indentation. Errors are reported with the exact line number inside the source file and a clear message, covering the failures people hit in production: a missing closing delimiter, an unterminated quoted string, a tab character in YAML indentation (YAML requires spaces, so a tab silently breaks every parser), a duplicate key in the same mapping, a malformed flow array, a section header without a closing bracket, and a TOML value that is neither a known scalar nor a quoted string. The Quick edit form gives you typed inputs for the five fields that ship in almost every site: title, description, date (with free-form parsing so 2026-06-15, 2026-06-15T10:00:00-07:00, and 2026-06-15 09:00:00 -0700 are all accepted), draft toggle, and a comma-separated tags list that round-trips to an array. The output panels show four ready-to-copy views: the frontmatter as a JSON object, a clean re-serialized YAML or TOML block with one consistent style, the body of the Markdown file with the frontmatter stripped, and the full document with the updated frontmatter merged back in. A one-click Convert to TOML or Convert to YAML button rewrites the frontmatter in the other flavor without rerunning the parser, which is the fastest way to migrate a Hugo site from YAML to TOML or onboard a TOML-only blog into a YAML-first generator. A Fields table summarizes every top-level key, its inferred type, and a truncated preview so you can spot a typo or a wrong value at a glance. Useful for technical writers, devrel teams, product marketers, indie bloggers, agencies maintaining client sites, and any developer setting up a new Markdown-based content workflow. Everything runs locally in your browser using a custom YAML and TOML parser, so drafts, internal docs, embargoed posts, and unreleased content stay on your device.

Free to use. Works in your browser. No signup, no login.

Related tools

You may also like

All tools
All toolsDeveloper Tools