Hash Markup is a free, open-source desktop Markdown editor for macOS and Windows. Download it directly from the site, no GitHub account or build tools required. (If you do want to inspect or build the source yourself, it is MIT-licensed and available on GitHub.)
The editor offers both a true WYSIWYG mode with a full formatting toolbar and a raw Markdown mode with syntax highlighting; toggling between the two takes a single keyboard shortcut (Cmd/Ctrl + /). Other niceties: folder-workspace sidebar, tabs, native PDF export, light/dark/auto theming, zoom (Cmd/Ctrl + scroll), and in-app auto-updates that download silently and relaunch when ready.
The editor is built on Milkdown (ProseMirror) for the WYSIWYG view and CodeMirror 6 for the raw markdown view. Code blocks get Prism syntax highlighting out of the box. Raw HTML pass-through is opt-in via View > Sanitize HTML (safe mode).

Hash Markup provides support for the following Markdown elements.
| Element | Support | Notes |
|---|---|---|
| Headings | Yes | |
| Paragraphs | Yes | |
| Line Breaks | Yes | |
| Bold | Yes | |
| Italic | Yes | |
| Blockquotes | Yes | |
| Ordered Lists | Yes | |
| Unordered Lists | Yes | |
| Code | Yes | |
| Horizontal Rules | Yes | |
| Links | Yes | |
| Images | Yes | |
| Tables | Yes | |
| Fenced Code Blocks | Yes | |
| Syntax Highlighting | Yes | Powered by the Prism library with support for dozens of languages out of the box. |
| Footnotes | Yes | |
| Heading IDs | Yes | Auto-generated from the heading text (e.g. ## My Section -> id="my-section") in exported HTML and PDF.
|
| Definition Lists | Yes | |
| Strikethrough | Yes | |
| Task Lists | Yes | |
| Emoji (copy and paste) | Yes | |
| Emoji (shortcodes) | Yes | Type :smile: to render as the emoji glyph; the source stays portable.
|
| Highlight | Yes | |
| Subscript | Yes | Toolbar inserts <sub> tags. Pandoc-style ~text~ is also rendered for back-compat.
|
| Superscript | Yes | Toolbar inserts <sup> tags. Pandoc-style ^text^ is also rendered for back-compat.
|
| Automatic URL Linking | Yes | |
| Disabling Automatic URL Linking | Yes | Wrap the URL in backticks to keep it as plain text without auto-linking. |
| HTML | Partial | Raw HTML is allowed when View > Sanitize HTML (safe mode) is disabled. With it enabled (the default), HTML is stripped from rendered output. |
Learn Markdown in 60 pages. Designed for both novices and experts, The Markdown Guide book is a comprehensive reference that has everything you need to get started and master Markdown syntax.
Get the Book