How to preview a Markdown file online
A Markdown previewer turns the plain-text Markdown you write into the formatted document readers see. Instead of committing a file and waiting for GitHub, GitLab or your static site generator to render it, you can check headings, tables, links and code blocks in the browser before anything is published.
- Paste your Markdown into the editor, drag a
.mdfile onto it, or choose Upload .md or text file. - Watch the preview update as you type — the split view keeps the source and the rendered page side by side.
- Use the On this page list to jump between headings, exactly like a documentation sidebar.
- Copy the generated HTML into a CMS, email template or static page, or download a complete HTML file with one click.
Files up to 1 MB are accepted. That is far more than a typical README, blog post or API reference, but small enough to keep the preview fast.
What is Markdown?
Markdown is a lightweight markup language created by John Gruber in 2004. It uses punctuation that
is already familiar from plain text — # for headings,
- for lists, ** for bold and
backticks for code — so a document stays readable even before it is rendered.
It has become the default format for README files, documentation sites, issue trackers, note-taking apps, static site generators and AI prompts. Because the source is plain text, Markdown works in Git, diffs cleanly in code review, and can be converted to HTML, PDF or slides later.
Markdown syntax cheat sheet
The previewer supports standard CommonMark plus GitHub-flavored Markdown (GFM). These are the constructs you will use most often.
| Element | Markdown | Result |
|---|---|---|
| Heading 1–6 | # Heading | Large section title |
| Bold | **text** | text |
| Italic | *text* | text |
| Strikethrough | ~~text~~ | |
| Link | [label](https://…) | Clickable link |
| Image |  | Inline image |
| Inline code | `code` | code |
| Fenced code | ```js … ``` | Preformatted block |
| Bullet list | - item | Unordered list |
| Numbered list | 1. item | Ordered list |
| Task list | - [x] done | Checkbox item |
| Blockquote | > quote | Indented quote |
| Table | | A | B | | Grid of cells |
| Horizontal rule | --- | Divider |
GitHub-flavored Markdown features
Plain CommonMark leaves a few things out, which is why GitHub added its own extensions. This previewer enables the same set, so what you see here matches what a README will look like on GitHub or in most documentation sites.
- Tables with alignment rows, rendered as real HTML tables.
- Task lists such as
- [x], shown as read-only checkboxes in the preview. - Strikethrough with double tildes and autolinks for bare URLs.
- Fenced code blocks with an optional language hint for syntax-aware styling.
- Disallowed raw HTML — script tags and other risky markup are removed rather than executed.
Preview scripts and code files
Markdown is also the easiest way to document a script. If you upload a source file such as
.js, .py,
.php, .sh or a plain
.txt, the tool wraps it in a fenced code block so you can preview
how it will look inside a README or documentation page.
Uploaded scripts are never executed. The content is treated as text, escaped during rendering, and
returned inside a <pre><code> element. That makes the
tool safe for reviewing configuration files, build scripts and code snippets you intend to publish.
Markdown vs HTML vs MDX
| Format | Best for | Trade-off |
|---|---|---|
| Markdown | README files, docs, notes, blog drafts | Limited layout control |
| HTML | Full control over structure and styling | Verbose and harder to review |
| MDX | Docs that embed React components | Requires a build step |
Most teams write in Markdown and generate HTML at build time. This tool covers the first half of that workflow: paste or upload the source, check the output, then export the HTML when you need it.
How to convert Markdown to HTML
- Paste the Markdown or upload the file you want to convert.
- Check the preview for broken links, malformed tables or missing images.
- Press Copy HTML to put the fragment on your clipboard, ready for a CMS or template.
- Press Download HTML to save a complete, standalone page with embedded styles.
The exported document uses semantic HTML — headings, lists, tables and code blocks — so it stays accessible and easy to style. Raw HTML in the source is intentionally stripped, which keeps the output predictable.
Where Markdown is used
- README and project docs on GitHub, GitLab and Bitbucket.
- Static sites and blogs built with Jekyll, Hugo, Astro, Next.js or Docusaurus.
- Issue trackers and pull requests, where Markdown is the native comment format.
- Notes and knowledge bases such as Obsidian, Notion exports and Logseq.
- AI prompts and specifications, where clear headings and lists make instructions easier to follow.
Common Markdown mistakes this preview catches
- A missing blank line before a list or table, which makes it render as plain text.
- Heading levels jumping from
#to###, which hurts document structure and accessibility. - Spaces inside link brackets, or parentheses that are not escaped in the URL.
- Unclosed code fences, which swallow the rest of the document into one block.
- Tables whose header row and alignment row have a different number of columns.
- Relative image paths that work locally but break once the file is published.
Is it safe to paste private Markdown?
The document is sent to the server only to be rendered, and it is not written to disk or stored after the response is returned. Raw HTML is stripped, unsafe link schemes are blocked and uploaded scripts are never executed. As with any online tool, remove passwords, API keys and personal data before pasting a production document.