ShiftTools ShiftTools
Zero-Upload Browser Utility

Live Markdown Editor

Write and preview GitHub Flavored Markdown (GFM) side by side in your browser. Track live word count and reading time, and export clean HTML or .md files.

Interactive Tool Workspace

Loading local in-browser WebAssembly engine & hardware cryptographic sandbox...

Drafting a GitHub README.md, technical blog post, changelog, or static-site article without a live preview often means committing broken table pipes or mismatched fenced code blocks. This browser-based Markdown editor pairs a clean source editor with an instant split-screen preview supporting GitHub Flavored Markdown (GFM) tables, task lists, blockquotes, and code blocks, live word/character/reading-time counters, and one-click .md or raw semantic .html export.

When a side-by-side Markdown workspace saves round-trips

Markdown is designed to be readable as plain text, but complex documents - especially multi-column comparison tables, nested lists, and inline HTML - are easy to misalign until you see them rendered:

  • Writing GitHub and GitLab README.md documentation: Previewing installation steps, CLI code blocks, badge rows, and configuration parameter tables before pushing a commit to your repository.
  • Drafting Astro, Next.js MDX, Hugo, or Jekyll blog posts: Writing long-form articles with live word counts and reading-time estimates while keeping drafts persisted safely in local browser storage.
  • Converting Markdown to clean semantic HTML: Copying compiled <h1>, <p>, <ul>, <table>, and <pre><code> HTML markup to paste directly into a CMS, newsletter tool, or documentation portal that lacks native Markdown support.
  • Taking structured meeting notes and technical specs: Using formatting toolbar shortcuts (bold, italic, headings, links, checklists) without leaving your browser tab.

Writing, previewing, and exporting Markdown step by step

  1. Type or paste your Markdown: Write directly in the left-hand source pane or drag an existing .md / .txt file into the editor.
  2. Use quick toolbar formatting: Highlight any phrase and click toolbar actions for Bold, Italic, Strikethrough, Headings (H1–H3), Link, Image, Code Block, Quote, Bulleted/Numbered List, or Table.
  3. Check the live rendered preview and document stats: Watch the right-hand preview pane update on every keystroke while monitoring Word Count, Character Count, Line Count, and Estimated Reading Time.
  4. Export as .md or .html: Click Download .md to save your Markdown file, Copy HTML to grab the compiled HTML source tags, or Download HTML for a standalone document.

Features built for technical writers and developers

Full GitHub Flavored Markdown (GFM) table and task-list rendering

Standard original Gruber Markdown did not include pipe tables (| Col A | Col B |), strikethrough (~~text~~), or fenced triple-backtick code blocks (``js). The live preview supports modern GFM syntax so tables with left/center/right alignment (:---, :---:, ---:) and interactive task lists (- [x] Done) render accurately.

Live word count, character count, and 200-WPM reading timer

When writing to a strict editorial brief or SEO word budget, you shouldn't have to copy and paste your draft into a separate word counter. The bottom status bar tracks words, characters, and reading time continuously as you type.

Automatic localStorage draft protection

Accidentally closing a browser tab halfway through writing a 1,200-word technical guide is painful. Your active Markdown buffer is automatically cached in your browser's local storage on your device so it is still waiting for you if you refresh the page.

A real example: building a GFM comparison table and exporting clean HTML

Suppose you are documenting rate limits for an API in README.md and write the following 7-line Markdown snippet (46 words):

## API Rate Limits

| Tier | Requests / Min | Burst Limit |
| :--- | :---: | ---: |
| Free | `60` | 10 req/s |
| Pro | `1,200` | 100 req/s |
  1. Paste or type the snippet into the left pane of the Markdown Editor.
  2. Notice how the alignment colons (:--- left, :---: center, ---: right) immediately align the three columns in the live preview pane.
  3. Click Copy HTML to get the exact semantic HTML output without any bloated inline CSS classes:
   <h2>API Rate Limits</h2>
   <table>
     <thead>
       <tr><th>Tier</th><th align="center">Requests / Min</th><th align="right">Burst Limit</th></tr>
     </thead>
     <tbody>
       <tr><td>Free</td><td align="center"><code>60</code></td><td align="right">10 req/s</td></tr>
       <tr><td>Pro</td><td align="center"><code>1,200</code></td><td align="right">100 req/s</td></tr>
     </tbody>
   </table>
  1. Click Download .md to save the source file to your repository.

Practical tips and limitations

  • Leave a blank line before lists and tables: Many Markdown parsers require an empty newline between a paragraph and the first row of a | Table | or - List so it doesn't get merged into the preceding paragraph line.
  • Sanitized HTML preview: To protect you from accidental self-XSS when pasting untrusted Markdown snippets from the web, executable <script> tags and inline onerror event handlers are neutralized in the live preview.

Keyboard-first editing and clean HTML copy workflow

Whether you are preparing release notes for GitHub, writing technical documentation for Docusaurus or Astro, or drafting blog posts, copying the compiled semantic HTML output avoids messy inline style="..." attributes that word processors inject when pasting into web CMS editors.

Privacy and 100% local execution

Unpublished blog posts, internal runbooks, and private project README files stay exclusively on your computer. The Markdown parser, live preview renderer, and localStorage draft saver run 100% locally in your browser with zero fetch or XMLHttpRequest calls.

Quick reference for GitHub Flavored Markdown (GFM) syntax

If you want to format documents rapidly from the keyboard without reaching for the mouse, these standard GFM patterns render immediately in the live preview:

  • Headings: Start a line with # H1, ## H2, ### H3, or #### H4 followed by a space.
  • Emphasis & inline code: Wrap text in bold, italic, ~~strikethrough~~, or single backticks for ` inline code `.
  • Fenced code blocks: Use triple backticks (``` `javascript ``) on the line before and `` ` ``` on the line after your snippet.
  • Task lists: Write - [ ] Unfinished task and - [x] Completed task to render interactive checkboxes.
  • Blockquotes & callouts: Prefix lines with > to format indented editorial callouts and citations.
  • Links & images: Use Anchor Text for links and !Alt Text for embedded images.

Related tools

Comparing two revisions of a Markdown article or README.md file? Paste both drafts into the Diff Checker. If you are extracting raw text from a PDF manual to reformat in Markdown, start with PDF to Text, or escape HTML code blocks in Encoder / Decoder. Read our guide on how to use the online Markdown editor.

Frequently Asked Questions

Are my Markdown drafts saved to a cloud server?

No. Your text is rendered locally in your browser and saved only in your own browser's localStorage on your device so you don't lose work if you refresh the tab. Nothing is ever sent to any server.

How do I create a table in Markdown?

Separate column headers with vertical pipe characters (| Header 1 | Header 2 |), add a divider row directly underneath with at least three hyphens per column (| --- | --- |), and then add your data rows. You can also click the Table button in the editor toolbar to insert a starter table template automatically.

Can I convert my Markdown into raw HTML code?

Yes. Clicking Copy HTML or Download HTML exports the clean, compiled semantic HTML tags (<h1>, <p>, <table>, <pre><code>) generated from your Markdown source.

How is the estimated reading time calculated?

The editor divides the total word count of your document by a standard technical reading speed of 200 words per minute (WPM) - so a 1,000-word article displays an estimated 5 min read.

Does this editor support GitHub Flavored Markdown (GFM)?

Yes. In addition to standard headings, bold/italic text, blockquotes, and links, the parser supports GFM extensions including fenced code blocks, pipe tables with column alignment, strikethrough (~~text~~), and task list checkboxes (- [x]).

How do I clear my saved draft from the browser?

Click the Clear / Reset button in the editor toolbar, which empties both the active text editor and the localStorage draft key on your device.