Markdown

or drop a file here, or paste code below
Style

No input yet.

Formatted Markdown

Files never leave your browserHow?

Markdown beautifier with a rendering check

This Markdown formatter rewrites a document in one consistent style – bullets, headings, numbered lists, indentation, tables and blank lines – and then checks that the rendered HTML did not change. Paste Markdown and download the tidy version.

Last updated:

How it works

  1. Paste the Markdown

    Paste text, open an .md file or load one from a URL. The sample is a deliberately messy changelog.

  2. Pick the style

    Choose the bullet character, numbering, emphasis markers, code fences and line-break style. Every option can also keep the original.

  3. Review and download

    Compare the formatted text, see what changed in the Changes tab and the result of the rendering check, then copy or download.

Features

  • Proof that nothing was lost

    The input and the output are rendered with a CommonMark parser and the HTML is compared. A green check means only the source formatting changed.

  • Lists done right

    One bullet character, renumbered ordered lists and nested items indented under their parent text. A list that starts with a different marker stays a separate list.

  • Tables aligned

    Pipes line up, cells are padded and the alignment row keeps :--, :-: and --: as they were.

  • Headings and rules

    Underlined headings become # headings, closing hashes and extra spaces go, and *** or ___ rules become ---.

  • Code untouched

    Fenced and indented code blocks, HTML blocks and front matter are copied as they are.

  • Same result every time

    Formatting is deterministic and idempotent: running it again on the output changes nothing.

Limits & privacy

Documents up to 5 MB. The formatter and the rendering check run in your browser (large inputs in a background worker); the text is not uploaded or stored. See the privacy page.

FAQ

How do I format a Markdown file?

Paste it or drop the .md file, keep the default style and download the result. The Changes tab counts what was rewritten.

Will formatting change how my README looks?

No. The rendering check compares the HTML before and after. Only spacing, markers and alignment in the source change.

Why is "#Title" not turned into a heading?

Without a space after #, CommonMark and GitHub show it as text. Turning it into a heading would change the document, so it is left alone.

Should I use * or - for bullets?

Both render the same. Dashes are the most common choice in style guides and linters; pick one and keep it consistent.

What does tidy blank lines do?

It collapses runs of empty lines to one and adds a blank line around headings, code blocks and tables, which some renderers need.

Is this the same as Prettier or markdownlint?

It covers the common formatting rules of those tools without installing anything, and adds a visible rendering check. It does not lint wording or links.

Related tools