Markdown Editor and Previewer

Write Markdown on the left and watch the rendered HTML update on the right, or open a .md file and read it in the previewer. Headings, emphasis, links, images, highlighted code blocks, tables, task lists and nested lists are all supported. Everything runs in your browser — the document is never uploaded.

0 words · 0 characters

What Markdown is

Markdown is a lightweight markup language: you write plain text with a few punctuation conventions, and a converter turns it into HTML. John Gruber released the first version in 2004 with the goal that the source should be readable as-is — a hash for a heading, asterisks around a word for emphasis, a hyphen to start a list item. Because the raw file is still legible, Markdown became the default format for README files, documentation sites, static-site content, issue trackers and chat apps.

The flavors you will run into

FlavorWhat it isNotable rules
Original MarkdownGruber's 2004 spec and the Markdown.pl script.Loosely defined; many edge cases were left to the implementation. No tables, no fenced code, no task lists.
CommonMarkA strict, unambiguous specification with a reference implementation and a full test suite.Precise rules for list nesting, emphasis, and how much whitespace means what. The base most modern parsers target.
GitHub Flavored Markdown (GFM)CommonMark plus a set of extensions used across GitHub.Adds tables, task lists - [ ], strikethrough ~~text~~, autolinked URLs and disallowed raw HTML.
MultiMarkdown / PandocAcademic and publishing extensions.Footnotes, citations, definition lists, math, metadata blocks. Great for documents, overkill for a web comment.

This editor targets CommonMark for the core syntax and adds the three most common GFM extensions — tables, task lists and strikethrough. It is intentionally compact rather than a byte-for-byte CommonMark implementation, so a few rare cases will render differently from GitHub.

Syntax cheat sheet

You writeYou get
# Heading 1 … ###### Heading 6An <h1> through <h6>
**bold** or __bold__bold
*italic* or _italic_italic
~~strikethrough~~strikethrough
[text](https://example.com)A link
![alt](https://example.com/i.png)An image
`inline code`A code span
Three backticks, code, three backticksA fenced code block (add a language after the opening fence)
> quotedA blockquote
- item or * item or + itemAn unordered list; indent two spaces to nest
1. itemAn ordered list
- [ ] todo / - [x] doneA task list with checkboxes
--- or ***A horizontal rule
A row of |-separated cells and a |---|---| line under the headerA table

Where Markdown is used

Markdown previewer and viewer

The editor doubles as a Markdown previewer. With Live preview on, the rendered HTML updates as you type; switch it off for very long documents and press Render preview when you want to see the result. The layout switch gives you Split (edit and preview side by side), Editor only, or Preview only — a clean Markdown viewer for reading a README or any .md file you open or paste. Fullscreen fills the window for focused writing or reading; press Esc to leave it.

Fenced code blocks are syntax-highlighted (keywords, strings, numbers and comments) for JavaScript, TypeScript, Python, JSON, SQL, shell, Go, Java, C-family and similar languages, and every block gets a Copy button. The copied or exported HTML is the clean rendered markup, without the highlighting spans or buttons.

Export to HTML, PDF or Markdown

Raw HTML inside Markdown

The original spec allows HTML to be mixed straight into a Markdown document: a <details> block, a <kbd> key or a <br> passes through to the output. Turn on Render raw HTML to preview it that way. For safety the preview removes <script>, <style>, <iframe> and similar tags, on… event attributes and javascript: links. With the option off, HTML is escaped so a stray < shows as a literal character instead of silently eating the rest of a line. Many hosted platforms (GitHub comments, most CMS fields) run Markdown through their own sanitizer too, so test raw HTML on the platform you publish to.

Common questions

What is Markdown?

A plain-text formatting syntax from 2004 that converts to HTML. You write readable text with a few conventions — # for a heading, * for emphasis, - for a list — and a parser produces the markup.

Which flavor of Markdown does this editor use?

CommonMark for the core, plus GFM tables, task lists and strikethrough. It is compact by design, so a few rare edge cases differ from a reference parser.

Can I use raw HTML inside the Markdown?

Yes, turn on Render raw HTML. Tags such as div, span, br, details and kbd are then passed through to the preview, as most Markdown processors do, while script, style and iframe tags, on-event attributes and javascript: links are removed. With the option off, HTML is escaped so a stray angle bracket shows literally. Hosted platforms often sanitize HTML, so test on your target platform.

Can I use it as a Markdown viewer or reader?

Yes. Open a .md file or paste its contents, such as a README, and switch the layout to Preview to read it rendered with headings, lists, tables and highlighted code blocks. Fullscreen gives you a distraction-free reading view. Nothing is uploaded.

How do I add a line break in Markdown?

End a line with two or more spaces, or a backslash, before pressing Enter; that creates a <br>. A blank line between paragraphs starts a new paragraph. A single Enter without trailing spaces does not create a line break in the rendered output.

How do I export Markdown to PDF or HTML?

Use Download HTML for a standalone .html file with basic styling, or Print / PDF to open the rendered document in your browser’s print dialog and choose Save as PDF. Download .md saves the Markdown source.

Is my document uploaded anywhere?

No. Parsing, rendering and the .md download all happen locally in your browser.

How do I get the HTML out?

Copy HTML puts the rendered markup on your clipboard; Copy Markdown copies the source. The HTML matches what the preview pane shows.