In development · —

MarkHippo

Open a .md file on a Mac and you get plain text. MarkHippo renders it: a split pane with the markdown on the left and the document on the right, updated a moment after you stop typing. Underneath is a parser written for it rather than borrowed — the whole of CommonMark 0.31.2, with every block and inline element knowing exactly which characters of the source it came from, and only the blocks around an edit reparsed as you type. That one tree renders the preview, colours the editor and drives autocomplete that teaches the syntax as you type — / for headings, lists and code blocks, the languages on a code fence — and lays out the outline, the minimap and synced scrolling. The core knows no markdown at all — it hosts plugins, and CommonMark is the first of them. Paste a screenshot and it goes into the document; print it, save it as a PDF, or export it as an HTML page, RTF for Pages and Word, or plain text.

Launch MarkHippo View the source

Web  ·  Electron · Vanilla JS  ·  GPL-3.0

Markdown editor on its own parser

Write markdown on the left, read it rendered on the right. MarkHippo reads it with its own CommonMark parser — every one of the spec's 652 examples, byte for byte — built to drive highlighting, autocomplete and navigation from the same tree. In your browser; nothing is uploaded.

A desktop app is on its way. The same page in its own window, for macOS, Windows and Linux: files opened and saved in place, pasted pictures kept in a folder beside the document, and your own plugins loaded from a folder. Its installers appear here with its first release; until then, MarkHippo runs right here in your browser.

Live preview, coloured source

Markdown on the left, coloured by the same parser as you type; the rendered document on the right, re-rendered when you pause. Leave a code fence open and everything below it turns to code on both sides, so the mistake shows itself. Fenced code is coloured in twenty languages.

Suggests the syntax as you type

Type / at the start of a line for headings, lists, quotes and code blocks, or mid-line for links and emphasis; open a code fence for its languages; Ctrl+Space anywhere. Each suggestion shows the markdown it stands for, so the list teaches as it helps.

Its own CommonMark parser

No markdown-it, no marked. A hand-written two-phase parser passes all 652 examples of the CommonMark 0.31.2 spec, matching the reference HTML byte for byte.

One tree, exact positions

Every heading, list item, link and emphasis knows its line, column and offset in the source — the structure that highlighting, autocomplete, the outline, the minimap and synced scroll are built on.

Incremental reparse

Typing in a long document reparses only the blocks around the edit and splices them in — with a fuzz test holding the result identical to a full parse.

Everything is a plugin

The core only hosts plugins. CommonMark is one, written against the same API a third party would use: new blocks, inline syntax, renderers for fenced languages like mermaid, and autocomplete suggestions. The desktop app loads your own, from a folder.

Themes, light and dark

Hippo, Catppuccin, Grey and High contrast, each with a light and a dark version that follows your system or your choice — or make your own in the theme editor, with contrast checked as you pick, and share it as a file (Rest Hippo's theme files import too).

Outline, minimap, synced scroll

An outline of the headings to jump between, a minimap of the whole document in the editor's colours, and an editor and preview that scroll together, heading for heading — all read from the same parse tree.

Tables, math and diagrams

GitHub's tables, task lists, strikethrough, bare links and footnotes, LaTeX math drawn as MathML, and Mermaid diagrams — each a plugin you can switch off, all working offline.

Pictures in, documents out

Paste a screenshot or drop a picture and it goes into the document, which stays one self-contained file. Print it or save a PDF, export a single HTML page, RTF for Pages and Word, or plain text, or copy it as rich text into an email.

Nothing leaves your machine

No server, no account, no tracking. Files are opened locally and never uploaded; scripts in a document's raw HTML never run.

Not out yet

MarkHippo is being built in the open and has no tagged release yet. The repository is the place to watch; this page will carry the downloads the moment there are any.

MarkHippo, everywhere else

The herd page is the introduction. These are the places the project actually lives.

PreviousYamlHippo NextMind Hippo