✨ Try our AI novel writing platform → StoryAlter.com
#MD SoloMD

v2.0 — From Markdown editor to PKM workspace

Six features designed together as a single planned cut, after a survey of every major Markdown editor on the market (Obsidian, Logseq, iA Writer, Ulysses, Bear, Zettlr, Joplin, Notesnook, NotePlan, Reflect, MiaoYan and more). Two credibility holes closed; two differentiators added; one new view; everything bilingual; opt-in by default for anything that touches the network or your dictionary.

🔗 Wikilinks + Backlinks

Type [[Welcome]] in any markdown doc. Cmd/Ctrl+click jumps to the target note (or creates it if missing). The new Backlinks panel in the right sidebar shows every other note that links here, with three lines of context per match. Autocomplete on [[ lists every note in your workspace, ranked by stem and title.

🔤 Spell-check

Hunspell-powered red-wavy underline for misspelled English words. Right-click for suggestions / "Add to dictionary" / "Ignore once". Latin-only by design (CJK runs are skipped — single-character "words" aren't spellable). Off by default; ~3 MB en_US dict on first enable.

📅 Daily Notes + 🏷 Tags panel

Cmd+D opens today's daily note (<workspace>/Daily/2026-04-25.md by default), creating it from your template if missing. Customizable folder, filename format (YYYY-MM-DD.md), and template (with {{date}}, {{day}}, {{previous}}, {{next}} tokens).

The Tags panel stacks under Backlinks, indexing every #tag across the workspace — click any tag to filter. Type # in the editor for autocomplete over existing tags.

🤖 Inline AI rewrite — ⌘J on any selection

Select text, press Cmd+J, pick an action (Rewrite / Shorten / Expand / Translate to EN / Translate to ZH / Explain / Custom prompt). The proposed text streams into a side-by-side diff overlay; Cmd+Enter accepts, Esc rejects, "Re-roll" regenerates.

13 providers wired in — pick a vendor in Settings, enter your key once, switch model freely:

For vendors with multiple lineups, the model field carries hints — DeepSeek shows deepseek-chat / deepseek-reasoner / deepseek-coder; Qwen shows qwen-plus / qwen-coder-plus / qwq-plus; 豆包 shows doubao-1-5-pro / doubao-pro-coder / doubao-1-5-thinking-pro. Same key, same endpoint — just type the model name and go.

Each provider's key is stored in your OS keychain (macOS Keychain / Windows Credential Manager / libsecret on Linux), never in localStorage. You can keep multiple vendors' keys simultaneously. Off by default — opt-in via Settings → AI rewrite.

📄 Pandoc export + @citekey citations

Export to EPUB / ODT / LaTeX / RTF in addition to the existing PDF / DOCX / HTML / PNG. Pandoc is detected on PATH (not bundled — keeps the installer at ~15 MB).

For academic writing: pick a .bib or .csl-json file in Settings → Bibliography, optionally pair with a .csl style. Type @ in any markdown doc and an autocomplete dropdown lists matching citation keys with author + year + title. Pandoc handles the actual bibliography generation on export with --citeproc.

📊 Bases-style properties table

A new view that renders every note in your workspace as a table — columns are inferred from YAML front-matter keys (any key seen in 2+ files becomes a column). Filter, sort, save views. Click a row to open the note. Open via the command palette: "Workspace: Properties Table (Bases)".

🐞 Bug fixes

⌨️ New shortcuts

🪶 Quality bar

Every feature meets all of:

What's next

Sync (CRDT-based, possibly paid-tier — the single biggest moat against Obsidian) is the v3 work. In v2.x: speaker-mode notes for slideshow, more wire formats for AI providers, and Mac App Store resubmission.

Download v2.0 →   Full release notes

Comments & feedback

Comments live on GitHub Discussions — sign in once with your GitHub account.

Comments load from GitHub Discussions. If you see this message instead, the maintainer has not finished the one-time giscus.app setup yet — see web/COMMUNITY-SETUP.md.

Open on GitHub Discussions →