✨ Try our AI novel writing platform → StoryAlter.com
#MD SoloMD
🤖 Android beta is recruiting testers → email [email protected] to join
v4.3.0 · just shipped · MIT · 5 platforms · ⭐ 307 · 8.1k downloads

The free Markdown
all-in-one.

Everything you want, you have it. Live preview, Wiki links, local RAG, BYOK AI, themes, Pomodoro, cross-platform sync — all built in.

Lightweight Markdown editor for macOS, Windows, Linux, Android, and iOS. Offline-first, no accounts, no IAP, no ads. ~15 MB installer, MIT-licensed, zero telemetry by default. 14 BYOK AI providers (Ollama included for fully-local runs).

⚡ Or one-line install
curl -fsSL https://solomd.app/install.sh | bash
irm https://solomd.app/install.ps1 | iex
See all platforms ↓
📝 Live preview🔗 Wiki links🤖 BYOK AI🔍 Local RAG🎨 Themes📱 Cross-platform
SoloMD v4 — Agent Panel + Recipe history + Trace view

TL;DR — what SoloMD is, in 60 seconds

SoloMD is a free, open-source Markdown editor for macOS, Windows, Linux, Android, and iOS. ~15 MB installer (6× smaller than Typora, 7× smaller than Obsidian). MIT licensed. Live preview, Wiki links, local RAG semantic search, 14 BYOK AI providers, AutoGit, and an MCP server — all built in. Offline-first, no accounts, no in-app purchases, no ads, zero telemetry by default.

Latest version
4.3.0 · released 2026-05-21
Price
$0 forever · no paid tier · no subscription
License
MIT · source on GitHub
Platforms
macOS · Windows · Linux (x64 + ARM64) · Android (API 24+) · iOS (15+)
Installer size
~15 MB (Typora ~70 MB · Obsidian ~110 MB · VS Code ~350 MB)
Memory at idle
~80–150 MB
UI languages
14 (en, zh, ja, ko, de, fr, es, pt, it, pl, nl, tr, sv, uk)
AI providers
14 BYOK · OpenAI, Claude, Gemini, xAI, Mistral, Groq, DeepSeek, Qwen, GLM, Kimi, Doubao, SiliconFlow, OpenRouter, Ollama
Data collection
Zero telemetry by default · no accounts · no cloud lock-in
Tech stack
Tauri 2 + Rust + Vue 3 + CodeMirror 6

Built around the way you actually work

Three short stories. Pick the one that sounds like you.

For writers

Long-form prose without the toolbar tax

Open a folder, hit focus mode, write. Markdown markup fades when the caret leaves the line. When the draft is done, Pandoc turns it into a PDF, DOCX, or EPUB without leaving the app.

  • Focus + typewriter modes (dim other paragraphs, keep the cursor centered)
  • Slideshow mode — render the same .md as fullscreen slides
  • Daily notes, word count, CJK-aware character count
  • Pandoc export to PDF / DOCX / EPUB / ODT / LaTeX
For researchers

Find the paragraph, not just the keyword

Semantic search ranks paragraphs by meaning across your whole vault. Wikilinks and backlinks connect notes, @citekey citations carry through to Pandoc, and 14 AI providers translate or summarize on demand — keys stay in your OS keychain.

  • Local semantic search, no model file, no network call
  • Wikilinks + backlinks panel, no graph-view bloat
  • @citekey citations preserved end-to-end via Pandoc
  • 14 BYOK AI providers for translate / summarize / explain
For developers

Your notes are already an MCP server

A 1.5 MB MCP sidecar exposes 8 read-only tools to Claude Desktop, Cursor, or any MCP client. Every save snapshots into a real local .git you own. WYSIWYG live edit and a `solomd` CLI keep you out of the GUI when you want.

  • MCP server bundled — stdio only, no network port
  • AutoGit version history (libgit2 vendored, never auto-pushed)
  • WYSIWYG live edit mode + 4-way view switcher
  • `solomd open / new / list / search` CLI, one-line installer

Built different — on purpose

Five principles that decide what we ship and what we say no to.

🏠

Local-first by default

Files on disk. AI keys in the OS keychain. The semantic-search embedder runs in our Rust process — no model download, no relay.

📜

MIT licensed, fully auditable

Every claim on this site is checkable in the source. Read the security writeup or grep the repo yourself.

Read /security →
🚫

No telemetry, no account, no cloud

Telemetry is opt-in only and content-free. There is no SoloMD account. The editor does not call home.

How we count things →
📄

Plain .md files forever

Uninstall SoloMD and your notes are still there — UTF-8 text, in folders you picked, openable in any editor.

💬

Friendly community on GitHub Discussions

Ideas, polls, show-and-tell, Q&A. One developer, one room, no Discord.

See the community →

A folder of markdown.
Plus the surface for agents to work in.

SoloMD has always shipped two halves of one product — an editor and a bundled MCP server pointing at the same vault. v4.0 adds a third half: a first-class agent surface inside the editor, with safety rails (AutoGit branch sandbox, per-run write-cap, accept/reject UI) so autonomous writes are reviewable — not scary.

💬 v4

Inline Agent Panel

Right-side panel, peer to Outline / Backlinks. Streamed chat with your whole vault. Tool-call cards (Cursor-style) show every read and write inline. Run history persists as plain markdown in <workspace>/.solomd/agent-runs/ — grep-able, git-trackable.

v4

Scheduled Recipes

YAML files under .solomd/agents/*.yml. Triggers: cron / on-save / on-commit / on-tag-add / manual. Every run goes to its own AutoGit branch agent/<recipe>/<run-id> — accept or reject before it touches main. write-cap default 5, hard cap 50.

🪞 v4

Trace view + replay

Every run emits trace.jsonl — one JSON line per step (model_call / tool_call / tool_result / git_commit / done). UI renders collapsible step cards with token counts and cost. Replay-from-step button mints a new run that re-uses the trace up to step N. The new read_agent_trace MCP tool lets agents introspect their own runs.

🌐 v4

Workspace Federation

solomd-mcp --workspace path1 --workspace path2 — one MCP session, multiple vaults. Tool signatures gain an optional workspace param (back-compat default = first). Settings → Integrations adds named MCP profiles with one-click "copy Claude Desktop config" buttons.

🦙 v4

Ollama first-class

Auto-detect at localhost:11434, "Install Ollama" hint if absent, /api/tags lists installed models, "Pull recommended" inline button (qwen2.5:1.5b ~1 GB). 3 built-in presets — rewrite (7b) / quick (1.5b) / CJK-friendly (14b). Recipes can specify provider: local for cheap autonomous loops on-device.

☁️ v3.0

GitHub-backed sync

Push your vault to a private GitHub repo on every save; pull on a timer. Built on libgit2 + OS keychain — your data stays on your account, no SoloMD server, no subscription. GitLab / Gitea / any HTTPS git URL works too.

🔒 v3.0

End-to-end encryption

Optional per-vault passphrase. Argon2id → XChaCha20-Poly1305, ciphertext-only on the remote. Search / RAG / AI rewrite still work locally because plaintext stays on your device.

🗂️ v3.0

iCloud / Dropbox / OneDrive

When your workspace already lives in a cloud-synced folder, SoloMD detects it and adds cross-device session restore on top — open the same vault on another machine and the same tabs come back.

🌐 v3.0

Public read-only share

One command-palette entry copies a solomd.app/share link for the active note. Reader-friendly Markdown render of any file in your public GitHub vault — no SoloMD account required to view.

🔍 v2.3

Semantic search

⌘⇧F opens a search panel that ranks paragraphs by meaning, not just keywords. Runs entirely on your machine — no model file download, no network call, ever. Off until you flip the switch in Settings.

✍️ v2.3

WYSIWYG live edit

Fourth view mode (edit / split / live edit / preview). Headings render larger, **bold** shows bold without the asterisks, lists indent visually. Markup reveals when the caret enters the line.

📜 v2.2

AutoGit version history

Every ⌘S becomes a snapshot in a local .git inside your workspace. Sidebar history panel shows every commit; one click to restore. libgit2 vendored, no system git needed. Never auto-pushed.

🤖 v2.2

AI rewrite, 14 BYOK providers

⌘J on a selection. OpenAI · Claude · Gemini · xAI · Mistral · Groq · DeepSeek · Qwen · GLM · Kimi · Doubao · SiliconFlow · OpenRouter · Ollama. Keys live in the OS keychain. Direct vendor calls, no relay.

🔌 v2.2

MCP server bundled

1.5 MB binary. Plug your vault into Claude Desktop / Cursor / Codex CLI. 8 read-only tools out of the box; write tools gated behind --allow-write. stdio only, no network port.

Live Preview

Markdown markers fade away when you leave a line. Headings get bigger, bold gets bold — no toolbars in the way. Synced split-pane scroll keeps editor and preview line-aligned.

🖼

Image paste & drag-drop

Screenshot then ⌘V — image saves to _assets/ and inserts a markdown link. Click any image or Mermaid diagram in preview to pop a full-screen overlay; pinch or scroll to zoom.

🌳

File tree + ripgrep search

Open a folder, browse files, ripgrep-style global search across every .md and .txt. ⌘P jumps to any file by fuzzy name.

🎨

Rich syntax styling

13 code-block languages, KaTeX math, Mermaid diagrams, footnotes, YAML front-matter, ==highlight==. 8 themes (Light / Dark / Nord / Solarized / Monokai / Dracula / GitHub Light) + custom CSS.

🌏

Chinese first-class

Auto encoding detection (UTF-8 / GBK / Big5 / Shift_JIS) via chardetng. CJK word count, simplified ↔ traditional, pinyin export — none of which Typora or Obsidian do natively.

📤

Pandoc export anywhere

PDF (with KaTeX & Mermaid), Word .docx, HTML, EPUB, ODT, LaTeX, RTF. Drop in .docx / .pdf / .xlsx / .pptx / .csv and SoloMD converts them to Markdown on the spot.

🦀

Tiny & fast

~15 MB installer (vs Typora 70 MB / Obsidian 110 MB). Tauri 2 + Rust + Vue 3 + CodeMirror 6. Zero telemetry by default. Builds for macOS / Windows / Linux x64 / Linux ARM64.

Quality-of-life touches

🎤

Slideshow mode

⌘⌥P renders the active doc as fullscreen slides, split on `---`. Vim-style nav, code highlighting, KaTeX, Mermaid all work in slides.

💻

CLI tool

`solomd open / new / list / search / cat` — open and grep notes from the terminal. One-line curl installer.

🪄

Format Markdown

⌘⌥L runs Prettier — normalizes lists, tables, spacing. Front matter preserved.

👋

Welcome tour

First launch opens 4 in-memory tutorial tabs in your language (en / 中文). Reopen anytime via the command palette.

⌨️

Vim mode

Full Vim emulation: hjkl, modes, visual, :w :q, macros. Toggle in Settings.

🤖

Clean AI artifacts

One click removes LLM junk: [cite_start], 【†source】, smart quotes, zero-width chars.

🎯

Focus & typewriter modes

Dim non-active paragraphs. Keep cursor centered. Long-form writing without distraction.

⌨️

Command palette

⌘⇧K to access every command. Native menu bar on macOS / Windows / Linux.

Where SoloMD stands out

In v4.0 the agent surface is the headline differentiator. Everything below is in the editor, in core, no plugin tax.

🔍

Local semantic search

Obsidian, Typora and MarkText all skip this in core. SoloMD ⌘⇧F: on-device embedder, no model download, no network call.

📜

AutoGit version history

Every ⌘S becomes a local .git snapshot — sidebar history panel restores in one click. Competitors leave you to wire git manually.

🔌

MCP server bundled

1.5 MB binary, 8 read-only tools. Plug your vault into Claude Desktop, Cursor, or Codex CLI.

SoloMD Typora MarkText Obsidian
Inline agent panel (chat-with-vault) ✅ v4 🟡 (paid plugins)
Scheduled agent recipes (cron / on-save / on-commit) ✅ v4
AutoGit branch sandbox + accept/reject for agent writes ✅ v4
Replayable agent trace (jsonl, replay-from-step) ✅ v4
Multi-vault MCP federation (one session, many vaults) ✅ v4
Ollama first-class (auto-detect, presets, provider: local) ✅ v4 🟡 (plugin)
GitHub-backed sync (you own the data) ✅ v3.0 ❌ ($96/yr SoloMD-style? no — Obsidian Sync stores on Obsidian servers)
End-to-end encrypted vault ✅ v3.0 ✅ (Obsidian Sync only)
Local semantic search ✅ v2.3 ❌ (paid plugins)
WYSIWYG live edit ✅ v2.3
AutoGit version history ✅ v2.2 ❌ (manual git)
MCP server bundled ✅ v2.2
14 AI providers, BYOK ❌ (1–2 per plugin)
Open source · MIT ✅ (dormant)
Installer size ~15 MB ~70 MB ~80 MB ~110 MB
Price Free $14.99 Free Free + $96/yr sync
Linux ARM64 build
CJK encoding (GBK/Big5)
File import (DOCX/PDF/XLSX/PPTX) 🟡 (plugin)
Pandoc export (EPUB/ODT/LaTeX) 🟡 (plugin)
Slideshow / presentation mode 🟡 (plugin)
Sync (CRDT, built-in) ❌ roadmap ✅ (paid)

Download SoloMD v4.3.0

Free and open source. MIT license. No account needed.

macOS: Drag SoloMD.app to /Applications. Notarized — no Gatekeeper warning.
Windows: First launch may show "Windows protected your PC" → click More info → Run anyway (one-time, until reputation builds).
Linux: chmod +x SoloMD-*.AppImage && ./SoloMD-*.AppImage for the AppImage.

Looking for older versions? All releases →

Frequently asked questions

Is SoloMD really free?

Yes. SoloMD is MIT-licensed open-source software at https://github.com/zhitongblog/solomd. There is no paid tier, no subscription, no in-app purchase, no ads, and no telemetry by default. Compare: Typora costs $14.99, iA Writer costs $29.99, Obsidian Sync is $4/month. SoloMD is $0 forever — sponsor the developer if it helps your writing.

What is the best free Markdown editor in 2026?

SoloMD is the most feature-complete free Markdown editor in 2026: cross-platform (macOS, Windows, Linux, Android, iOS), ~15 MB installer, MIT-licensed, with live preview, Wiki links, local RAG, 14 BYOK AI providers, AutoGit, MCP server, Pomodoro, and 8 themes — all built in. MarkText is dormant since 2023, Obsidian is closed-source and lacks Linux ARM64 + first-class plugins for AI without third-party packages, and VS Code is a code editor that happens to render Markdown.

How does SoloMD compare to Typora?

SoloMD is free; Typora is $14.99. SoloMD is ~6× smaller (15 MB vs 70 MB). SoloMD is open source (MIT) on GitHub; Typora is closed-source. SoloMD runs on Android and iOS; Typora is desktop-only. Both ship Typora-style WYSIWYG live preview. Typora has more polished UI animation; SoloMD adds Wiki links, local RAG semantic search, 14 BYOK AI providers, MCP server, and AutoGit version history that Typora does not have.

How does SoloMD compare to Obsidian?

SoloMD is ~7× lighter (15 MB vs 110 MB). SoloMD is fully MIT-licensed open source; Obsidian is closed-source. SoloMD ships local RAG semantic search, AI rewrite with 14 BYOK providers, AutoGit version history, and an MCP server in core — Obsidian requires third-party plugins for equivalents. Obsidian has a knowledge-graph view and a mature plugin marketplace; SoloMD does not. Use Obsidian if you want a second-brain plugin ecosystem; use SoloMD if you want the writing tools without the plugin tax and an open-source codebase.

Does SoloMD work on Android and iOS?

Yes. SoloMD 4.3.0 ships native Android (API 24+, ARM64 + ARMv7 + x86_64) and iOS (15+) builds. Android is available as sideload .apk on GitHub Releases and via Google Play closed-testing beta (email [email protected] to join). iOS is on the App Store. Both mobile builds support live preview, Wiki links, AI rewrite, and folder-based sync via iCloud / Files / SD card.

Does SoloMD work offline?

Yes, fully. The editor itself makes zero network requests. Local RAG semantic search runs on an on-device embedder with no model download and no cloud call. AutoGit commits to a local .git repository inside the workspace and never auto-pushes. The only outbound traffic is (1) the optional GitHub update check on launch (toggle off in Settings) and (2) AI calls you explicitly trigger, which go straight to the provider you chose — SoloMD never relays.

How big is the installer?

~10–15 MB depending on the platform. That is roughly 6× smaller than Typora (~70 MB) and 7× smaller than Obsidian (~110 MB) because SoloMD uses Tauri 2 (system webview + Rust) instead of bundling Chromium. Idle memory is ~80–150 MB.

Does SoloMD need an AI subscription?

No. SoloMD ships AI rewrite (Cmd+J on a selection) with 14 BYOK — bring your own key — providers: OpenAI, Claude (Anthropic), Gemini, xAI Grok, Mistral, Groq, DeepSeek, Qwen, GLM, Kimi, Doubao, SiliconFlow, OpenRouter, and Ollama. Use Ollama for fully-local zero-cost runs (qwen2.5:1.5b is ~1 GB and runs on most laptops). SoloMD itself charges nothing for AI — you pay only your chosen provider per token, or nothing if you use Ollama.

Where are my API keys stored?

In your OS keychain — Apple Keychain on macOS, Credential Manager on Windows, libsecret on Linux. Never in localStorage, never in a config file SoloMD writes to disk. AI requests go directly from your machine to the provider you chose; SoloMD does not host models or relay any traffic.

How is SoloMD's semantic search different from grep?

Grep matches characters; semantic search matches meaning. Search 'deployment' and SoloMD's local RAG also surfaces paragraphs about 'rolling out', 'shipping', or 'release'. The embedder runs entirely in our Rust process — no model file download, no network call, no cloud. Off by default; flip the switch in Settings to opt in. Index lives in <workspace>/.solomd/embeddings.sqlite (auto-gitignored).

How does the MCP server work?

SoloMD ships solomd-mcp, a 1.5 MB sidecar binary that speaks the Model Context Protocol over stdio — no network port. Point Claude Desktop, Cursor, Codex CLI, or any MCP client at your workspace and it gets 8 read tools (list_notes, read_note, search, get_backlinks, list_tags, get_outline, export_note, etc.) plus 2 write tools gated behind --allow-write. Path-traversal guarded with workspace-canonical containment.

Can I sync my notes to other devices?

Yes, via any folder-based sync service. SoloMD works perfectly with iCloud Drive, Dropbox, OneDrive, Syncthing, or any tool that syncs a folder. Just put your workspace inside the synced folder. Or use AutoGit + manual push to a private GitHub repo. Built-in CRDT sync is on the roadmap but intentionally not the v4 focus — we don't want to lock you into a SoloMD-specific server.

Why are there no plugins?

SoloMD intentionally omits a plugin marketplace to stay lightweight, stable, and easy to audit. The features serious writers ask for — Wiki links, semantic search, AutoGit, AI rewrite, 14 BYOK providers, MCP server, Pomodoro, image paste, KaTeX, Mermaid, focus mode, slideshow mode, Vim mode, custom CSS — all ship in core. Trade-off: no Obsidian-style third-party ecosystem.

What languages does SoloMD support?

The UI ships in 14 languages: English, Simplified Chinese (zh-CN), Japanese, Korean, German, French, Spanish, Portuguese, Italian, Polish, Dutch, Turkish, Swedish, and Ukrainian. Auto-detected from your OS locale on first launch, switchable in Settings. The document content itself is encoding-agnostic — SoloMD auto-detects UTF-8 / UTF-16 / GBK / GB18030 / Big5 / Shift_JIS files.

How does SoloMD handle CJK / Chinese files?

SoloMD is Chinese-first: chardetng-based auto encoding detection (UTF-8 / GBK / GB18030 / Big5 / Shift_JIS), CJK word count in the status bar (counts characters, not space-separated tokens), Simplified ↔ Traditional Chinese conversion via OpenCC, pinyin export, and bundled Noto Sans CJK / WenQuanYi font fallback on Linux. Typora and Obsidian do none of these natively.

How do I install SoloMD?

One line. macOS / Linux: run 'curl -fsSL https://solomd.app/install.sh | bash' in a terminal — the script auto-detects your OS and CPU architecture and installs the latest release. Windows: open PowerShell and run 'irm https://solomd.app/install.ps1 | iex'. Or download platform-specific installers (.dmg / .msi / .AppImage / .deb / .rpm / .apk) from https://github.com/zhitongblog/solomd/releases/latest. Average install time: under 2 minutes on a normal connection.

Contact / Join the room

One maintainer, two front doors. WeChat for the Chinese community, Telegram channel for everyone else. GitHub Discussions works too — link below.

WeChat (personal)

WeChat (personal)

Scan to add me on WeChat. Mention "SoloMD" so I know it's you.

Telegram channel @SOLOMDAPP

@SOLOMDAPP

Click or scan to join. Release announcements + chat live here.