Markdown Editor with Live Preview
Text Tools
Free online Markdown editor with live preview, toolbar shortcuts, multi-document tabs, and localStorage autosave. Export as .md or .html. No login required.
How to use this tool
- Write your Markdown. Type or paste Markdown in the left editor pane. Use the toolbar buttons to insert formatting - bold, italic, headings, lists, links, tables, and more.
- Check the live preview. The right pane shows the rendered HTML in real time. Toggle the preview layout (right, bottom, or hidden) using the buttons in the toolbar row.
- Manage multiple documents. Click "+" to create a new document tab. Click a tab to switch documents. Double-click a tab label to rename it. Click "×" on a tab to delete it.
- Export your work. Copy Markdown or the sanitized HTML fragment for pasting into another app. Use Export .md or Export .html to download the source or a standalone sanitized HTML page.
How to use the Markdown Editor
Type or paste Markdown in the editor pane on the left. The preview on the right updates in real time. Use the toolbar to insert common formatting (bold, italic, headings, links, lists, tables, and more) without memorizing any syntax. Press Ctrl+B for bold and Ctrl+I for italic directly from the keyboard.
Create multiple documents using the + button in the tab bar. Each document autosaves to your browser's localStorage within 300 ms of each keystroke. Documents survive page refreshes and browser restarts. Double-click a tab label to rename the document.
Markdown syntax reference
| Syntax | Result |
|---|---|
# Heading 1 | Large heading (H1) |
## Heading 2 | Section heading (H2–H6) |
**bold** | bold |
*italic* | italic |
~~strike~~ | |
`code` | inline code |
[text](url) | Hyperlink |
 | Image |
> text | Blockquote |
- item | Unordered list |
1. item | Ordered list |
- [ ] task | Task list (unchecked) |
- [x] task | Task list (checked) |
--- | Horizontal rule |
| Pipe-separated columns | Table (see toolbar) |
Markdown vs HTML
Markdown is a lightweight syntax that converts to HTML. It was created by John Gruber in 2004 with the goal of being readable as plain text while still being easily converted to formatted HTML. This editor uses GitHub Flavored Markdown (GFM), a widely adopted superset of the original specification that adds tables, task lists, and strikethrough.
HTML gives you more control (every CSS property and ARIA attribute is available), but it is
verbose and error-prone to write by hand. For content that does not require advanced layout,
Markdown is usually faster to write and easier to maintain. This tool lets you export to both
formats: download the raw .md source or the sanitized .html page.
Browser storage and privacy
All documents are stored in localStorage, a browser-based key/value store that
never leaves your device. No document text is transmitted to any server. The editor uses the mde:docs key as a document index and mde:doc:<id> keys for each document's title, content,
and update time. These namespaced keys do not interfere with other site data. The typical localStorage
quota is 5–10 MB per origin; the editor warns you when usage approaches 4 MB.
Because localStorage is device-specific, documents created on your laptop will not appear on
your phone. Export important documents as .md files to keep portable backups.
Keyboard shortcuts
| Action | Windows / Linux | macOS |
|---|---|---|
| Bold | Ctrl+B | ⌘B |
| Italic | Ctrl+I | ⌘I |
| Export Markdown | Ctrl+S | ⌘S |
| Export standalone HTML | Ctrl+Shift+S | ⌘Shift+S |
| Open Find & Replace | Ctrl+F | ⌘F |
| Indent in the editor | Tab | Tab |
| Undo (browser textarea) | Ctrl+Z | ⌘Z |
| Redo (browser textarea) | Ctrl+Y or Ctrl+Shift+Z | ⌘Shift+Z |
These shortcuts work while the Markdown editor has focus. Find focuses its search field, while the save shortcuts download the current document in the selected format. Undo and redo are handled by your browser's textarea editing behavior. Additional toolbar buttons insert headings, links, images, code blocks, blockquotes, and horizontal rules.
Export formats
- .md (Markdown source): the raw plain-text file. Use this to version-control your document in Git, share with editors who use their own renderer, or open in any text editor.
- .html: the rendered and sanitized HTML output. Use this to embed the content in a webpage, email, or CMS that accepts HTML.
- Clipboard: Copy Markdown copies the editable source; Copy HTML copies the sanitized rendered fragment for pasting into another app. The export buttons still download files, including a standalone HTML page.
Markdown flavors
This editor uses GitHub Flavored Markdown (GFM), which extends CommonMark (the standard specification) with:
- Tables: pipe-separated syntax with alignment colons.
- Task lists:
- [ ] unchecked/- [x] checked. - Strikethrough:
~~deleted~~. - Autolinks: bare URLs become clickable links.
If you paste this Markdown into a platform that uses CommonMark (without GFM extensions), tables and task lists will not render - they'll appear as raw pipe characters and brackets. Footnotes and definition lists are not supported in GFM; use HTML for those elements.
About the Markdown engine
The editor parses Markdown with marked using GFM support and
breaks: false, so a single newline inside a paragraph remains a soft line break.
It then sanitizes the generated HTML with DOMPurify before displaying the preview,
copying HTML, or exporting a page. This is a browser-side workflow; no document text is sent to
a rendering service.
Frequently asked questions
Are my documents saved automatically?
Yes. Every document is autosaved to your browser's localStorage within 300 ms of each keystroke. Documents persist between page refreshes and browser sessions. However, localStorage is device-specific - your documents are not synced across devices. Export important documents to keep a backup.
How many documents can I create?
There is no built-in limit on the number of documents. The practical limit is your browser's localStorage quota, which is typically 5–10 MB. The editor warns you if usage approaches 4 MB. Export and delete old documents when space runs low.
What Markdown syntax is supported?
GitHub Flavored Markdown (GFM), parsed with marked using gfm: true and breaks: false. This includes headings, bold, italic, strikethrough, inline code, fenced code blocks, links, images, blockquotes, ordered and unordered lists, task lists (checkboxes), tables, and horizontal rules. DOMPurify sanitizes the generated HTML. Footnotes, definition lists, math, and Mermaid diagrams are not supported.
Which keyboard shortcuts are available?
With the Markdown editor focused, Ctrl+S (or Command+S on macOS) downloads Markdown, Ctrl+Shift+S downloads standalone HTML, and Ctrl+F opens Find & Replace and focuses its search field. Ctrl+B and Ctrl+I apply bold and italic. Tab inserts two spaces in the editor. Undo and redo use the browser textarea behavior.
Is the HTML export safe to use on a website?
Yes. All HTML output is sanitized with DOMPurify before being rendered in the preview or exported. Dangerous elements such as <script> tags and javascript: links are stripped automatically.
Can I import an existing Markdown file?
Yes. Click "Import .md" and select a .md or .txt file from your computer. The file content loads into the current document. Importing overwrites the current document content, so export or create a new tab first if you want to keep the existing content.
How do I rename a document?
Double-click the document tab label to enter edit mode. Type the new name and press Enter (or click away) to save.
Related text tools
- Markdown PreviewRender a one-off Markdown draft and copy its sanitized HTML without creating a saved document.
- Clipboard -> MarkdownConvert rich text copied from a webpage or document into Markdown before editing.
- Word CounterCheck the word count, character count, and reading time for a draft.
- Find & ReplaceUse case-sensitive, whole-word, or regex search for larger text replacements.
- Text DiffCompare two saved drafts and review changed lines or words side by side.
- Markdown TableBuild a Markdown table in a visual grid, then paste it into the editor.