Markdown Converter
Write Markdown with live preview, then export to PDF, PNG, Word, or copy the HTML. All processing happens in your browser.
About this tool
Markdown is a lightweight markup language created by John Gruber in 2004. It is now the de facto standard for documentation, README files, blog posts, and technical notes across the software industry — supported natively by GitHub, GitLab, Notion, Reddit, Discord, Slack, and most modern CMS platforms. This converter lets you compose content in Markdown and export it to a Word document or copy the rendered HTML.
Security note: how this tool handles your content
All conversion runs locally in your browser using marked.js (vendored; loaded from this origin, not a CDN) for parsing and DOMPurify (also vendored) to strip any HTML tags, JavaScript, or event handlers embedded in the source. This means even a hostile Markdown file cannot execute scripts in your browser. The converter is also protected by a Content-Security-Policy header that blocks any outbound network request, so even a hypothetical bypass could not exfiltrate data.
Supported syntax
- Headers (H1–H6) with
#syntax - Bold and italic text
- Ordered and unordered lists (including task lists)
- Inline code and fenced code blocks
- Tables with alignment support
- Blockquotes and nested quotes
- Horizontal rules
- Links and reference-style links
- Strikethrough text
Export options
- PDF: a print-ready document that preserves formatting on every device. Good for sharing or archiving.
- PNG: a 2× resolution image of the rendered preview, ideal for embedding a snippet in a presentation or social post.
- Word (.doc): an HTML-formatted .doc that opens in Microsoft Word and Google Docs. Inline styles are preserved. Useful when handing off a document for further editing.
- Copy HTML: copies the sanitized rendered HTML to your clipboard, ready to paste into a CMS, an email, or another tool.
Markdown best practices for long documents
- One H1 per file. The first line should be a single
# Title. Most renderers only emit one document title; extras become regular sections and break table-of-contents generators. - Don't skip heading levels. Go H1 → H2 → H3 in order. Skipping from H2 to H4 confuses screen readers and breaks anchor-link previews on GitHub.
- Use reference-style links for repetition. Define the URL once with
[ref]: https://...at the bottom and reference it as[text][ref]. - Fence code blocks with a language tag.
```pythonrenders with syntax highlighting; a bare```renders as plain monospace. - Wrap lines at 100 characters. Modern displays are wider than 80; longer lines make diffs cleaner.
- Prefer relative paths for internal links.
[About](../about/)travels with the document when it moves; absolutehttps://...links rot when the domain changes.
Limits and performance
The Markdown parser handles documents up to roughly 5–10 MB of source text in well under a second on a modern laptop. Beyond that the live preview starts to lag because the parser re-runs on every keystroke. For documents larger than a few hundred pages, paste in sections or use a dedicated editor like Obsidian or Typora that virtualizes long documents. On older phones, documents above 500 KB may show visible typing lag because DOMPurify walks the entire output tree on each render.
FAQ
What is Markdown and why use it? A lightweight plain-text markup language created in 2004 as a readable alternative to HTML. The same file is both the source you write and the source a reader sees — asterisks for italics, hash marks for headings, square brackets for links. Markdown is supported natively by GitHub, GitLab, Reddit, Notion, Obsidian, Discord, Slack, and most modern CMS platforms, so writing once and publishing everywhere is realistic.
What's the difference between Markdown, CommonMark, and GFM? The original Markdown spec was ambiguous, leading to divergent implementations. CommonMark is a strict, unambiguous specification that most modern parsers follow. GitHub Flavored Markdown (GFM) extends CommonMark with tables, task lists, strikethrough, and autolinks. This tool renders in GFM mode, which is the most useful superset for technical writing.
Does my Markdown leave the browser? No. Conversion, sanitization, and export all happen client-side using marked.js for parsing, DOMPurify for HTML sanitization, html2canvas for PNG capture, and the browser's built-in print engine (via window.print()) for PDF export. All three vendored libraries are loaded from this origin, not a CDN. The Content-Security-Policy header additionally blocks any outbound network request, so the page cannot phone home even if a hypothetical bypass were discovered.
Why is some content I pasted missing from the preview? DOMPurify removes <script>, <iframe>, event handlers, style attributes, and javascript: links for safety. If you need to embed rich HTML, paste it directly into your destination tool.
Why does pasting the Word export into Microsoft Word look slightly different from the preview? Microsoft Word reads the .doc file's embedded HTML and CSS but does not implement every CSS property. Code blocks render in monospace but without the dark-background styling of the preview; blockquotes show a left border but no background color. For pixel-perfect results, paste the HTML into a CMS that supports inline styles instead.