PK Systems
Developer tools

Markdown Preview

Write Markdown on the left, see the rendered HTML on the right. Live preview, GFM support, copy as HTML.

Markdown Preview

Markdown
Preview

What is Markdown?

Markdown is a lightweight markup language created by John Gruber in 2004 to write formatted text using nothing but a plain keyboard. **bold**, # headings, - lists — small conventions that turn into clean HTML. It's the default format for README files on GitHub, posts on Reddit and Stack Overflow, documentation generators, and most note-taking apps. This previewer parses your input with the marked library and shows the rendered HTML next to the source so you can iterate fast without leaving the page.

How to use this previewer

Type or paste Markdown on the left. The right pane re-renders as you type. Toggle GitHub-flavored to enable extras like tables, task lists and strikethrough. Toggle Break on newline if you want every line break to become a <br> (most editors prefer the default, where you need a blank line between paragraphs). Click Copy HTML to put the rendered HTML on your clipboard — paste it into a CMS, an email, or anywhere that accepts HTML.

Quick syntax reference

The most common Markdown tokens. The previewer accepts the full CommonMark spec plus the GitHub-flavored extensions when the GFM toggle is on.

Markdown Renders as
# TitleTop-level heading
**bold**bold
*italic*italic
`code`inline code
[text](url)Hyperlink
- itemBullet list item
> quoteBlock quote
| a | b |Table row (GFM)

Frequently asked questions

Is my Markdown sent anywhere?
No. Parsing happens entirely in your browser using the marked library loaded from a public CDN. After the initial script load, no further requests are made — typing and rendering are 100% offline. Open DevTools > Network and you'll see no traffic when you edit. Safe for drafts, internal docs, and anything you wouldn't paste into a hosted editor.
What does the GFM toggle do?
GitHub-flavored Markdown adds extensions to the CommonMark base: tables, task lists (- [x] done), strikethrough (~~text~~), autolinks, and slightly different list/paragraph rules. With the toggle on you'll see GitHub's rendering; with it off, strict CommonMark. Most platforms (GitHub, GitLab, Stack Overflow) use GFM, so leave it on by default.
Why doesn't a single line break create a new line?
By the Markdown spec, a single newline is just a space — paragraphs are separated by blank lines. This matches Word/Google-Docs reflow behaviour and is what GitHub does. If you want every newline to break (e.g. for poetry, lists of names, log lines), enable the Break on newline toggle.
Is the output safe to paste into my site?
Be careful with untrusted Markdown. Markdown allows raw HTML pass-through, so a malicious source could embed a <script> tag that runs when you paste the rendered HTML somewhere that doesn't sanitise. This previewer is for inspection — if you're piping user-submitted Markdown into your site, run the output through a sanitiser like DOMPurify on the server before serving it.
Can I export to PDF or Word?
Not directly here, but the workflow is easy: copy the rendered HTML with the button, paste it into a document editor (Google Docs, Pages, LibreOffice all preserve HTML formatting on paste), and export from there. For PDF, the simplest route is to print the rendered HTML — your browser's print dialog has a "Save as PDF" destination.
Why is some HTML being rendered raw in my output?
Markdown intentionally allows inline HTML — anything between < and > that looks like a tag is passed through as-is. If you want to show HTML rather than render it, escape the angle brackets (&lt; and &gt;) or wrap the snippet in fenced code (triple backticks). The same trick works for any literal Markdown punctuation.