Free & open source A Markdown editor for macOS

Markdown, as it will look, while you write.

Marpora renders tables, math, diagrams and slides in place, and shows the syntax only where your cursor is. A small native app built with Rust and Tauri.

macOS 12+, Apple Silicon & Intel · MIT licensed

Marpora with a document called A field guide to orbits: a paragraph with inline math, a numbered display equation, a table of planets, a Mermaid flowchart and a task list, with the outline in the sidebar.
The editor in its default light theme, with the outline open.

01 Live preview

The syntax steps aside. The page stays.

Markdown shows only around the cursor. Move on, and it becomes the finished page again. No split pane, no preview tab.

Syntax on demand

Step into a word and its ** appear. Step out and they fold away.

A paragraph with inline math, the equation F equals G m1 m2 over r squared numbered (1), and a table of the inner planets.

Renders in place

Tables, inline and display math (MathJax), code fences, footnotes, task lists, front matter and raw HTML.

A Mermaid flowchart: Observe, Measure, a decision Fits the law?, then Publish if yes or back to Observe if no.

Diagrams from text

Mermaid, flowchart and sequence diagrams draw right under their fence.

  • Source mode⌘/
  • Focus modeF8
  • Typewriter modeF9

One key away

Drop to raw Markdown, dim everything but the paragraph you are in, or keep your line centred.

02 Themes

Your Typora themes, unchanged.

Marpora uses Typora's markup and class names, so Typora themes load as they are. Drop the CSS in the themes folder, or pick a bundled theme such as Marpora and Marpora Night.

Drag across the window to switch themes.

A document about sourdough in the light Marpora theme, with a table, an equation and a sequence diagram.
The same document in the dark Marpora Night theme.

03 AI, built in

Ask about the page. Or the whole folder.

Bring the model you already use. Keys stay in the macOS Keychain.

Ask AI

⇧⌘J

Rewrites the selection or writes at the cursor. The answer streams in as a preview: ↵ accepts, Esc discards, and one ⌘Z undoes it.

Ask AI over a selected paragraph: the prompt Make this clearer, the rewritten text previewed below it, and buttons Replace, Insert Below, Try Again and Discard.

AI Chat

⌥⌘J

A side panel that talks about the open document, or about every file in its folder. Answers go into the page with one click.

The AI Chat panel beside a planning document, answering the question What's the biggest risk in this plan? with a short list, and Insert, Replace Selection and Copy buttons.

Works with

  • Anthropic API
  • Any OpenAI-compatible API
  • Claude Code CLI
  • Codex CLI

Use the Claude Code or Codex CLI you are already signed in to, with no key at all.

API keys live in the macOS Keychain.

prompts/Make it friendlier.md

Rewrite the passage in a warmer tone. Keep it short and keep every fact.

Custom prompts are plain Markdown files: the name is the prompt, the text is the instruction.

04 Agents via MCP

Let your agent edit the open document.

Claude Code, Codex and other MCP clients read and edit the documents open in Marpora, live. Every edit undoes with ⌘Z. Prefer to look first? Turn on Ask me first and accept or reject each change.

Claude Code

claude mcp add marpora -- /Applications/Marpora.app/Contents/MacOS/marpora mcp

Codex

codex mcp add marpora -- /Applications/Marpora.app/Contents/MacOS/marpora mcp
An edit suggested by claude-code at line 13 of a planning document, shown as removed and added lines, with Always Allow claude-code, Reject and Accept buttons.
Ask me first: each agent edit waits for your review.

05 Slides

marp: true and it's a deck.

Add one line of front matter and the document becomes a Marp deck. Write on the left, watch the slides on the right.

A Marp deck being written: front matter with marp: true and theme: gaia on the left, and the live slide preview on the right showing the slides Shipping calm software, Three rules and Why small batches.
  • ⌥⌘MLive slide preview
  • Theme picker
  • ⌥⌘↩Presenter view with notes, next slide and timer
  • PDF · HTML · PPTXExport to PDF, HTML and PowerPoint

06 Files & export

Plain files in, any format out.

A sidebar for the folder

Files, the outline, and search across every file in the folder.

Autosave and drafts

Your work saves itself, and unsaved drafts come back after a crash.

Outside edits, merged

Change the file in another app and the edits flow into the open document.

Export anywhere

  • PDF
  • HTML
  • Image
  • Word
  • OpenOffice
  • EPUB
  • LaTeX
  • and more

Word, OpenOffice, EPUB, LaTeX and more go through Pandoc.

07 Performance

Rust underneath. No waiting on top.

Rust parses a 20,000-line document
9ms
Editor ready after the page loads
60ms
Editor opens 20,000 lines
~0.5s

Measured on an Apple Silicon Mac; editor timings in headless WebKit. Method and full results in docs/benchmarks.md.

08 Install

Three steps. Then it updates in place.

Marpora is ad-hoc signed, not notarized, so macOS asks once before the first launch.

  1. Download and drag

    Open Marpora.dmg and drag Marpora to Applications.

  2. Allow the first launch

    Gatekeeper blocks the first launch. Open System Settings › Privacy & Security and click Open Anyway. Or run:

    xattr -dr com.apple.quarantine /Applications/Marpora.app
  3. Updates come to you

    From then on, updates install from inside the app: Marpora › Check for Updates…

Start writing.

Free, open source and native to your Mac.

macOS 12+, Apple Silicon & Intel