A modern, open-source Markdown editor with built-in Mermaid diagram support
AI Assistant • Features • Screenshots • Installation • Usage • Development
MerMark Editor combines the simplicity of Markdown with the power of Mermaid diagrams in a beautiful, native desktop application. Perfect for developers, technical writers, and anyone who needs to create documentation with flowcharts, sequence diagrams, and other visualizations.
- No cloud dependency - Your documents stay on your computer
- Native performance - Built with Tauri for fast, lightweight operation
- WYSIWYG editing - See your formatted content as you type
- Mermaid integration - Create diagrams directly in your documents
- Multi-root workspaces - Open one folder or many; the AI sees them as scoped read-only context
- Local AI assistant - Talk to Claude or Codex about your notes; they edit your files directly
- Cross-platform - Available on Windows, macOS and Linux
If you already pay for Claude Code or OpenAI Codex — or both — MerMark plugs that subscription straight into the editor. The AI panel speaks to the claude and codex CLIs you already have logged in, so every request goes through the account you're already paying for. No API key to generate. No second bill. No proxy sitting between you and your provider.
AI panel docked next to the editor with model picker, threads dropdown, pinned fragments and live context bar
- Claude Code or Codex on a Pro/Plus plan — MerMark uses that login, no extra account.
- No API token to manage — the CLI handles auth, MerMark never sees your keys.
- Direct to provider — requests go from your machine straight to Anthropic or OpenAI; nothing else in between.
- No telemetry — zero data leaves the editor beyond the CLI call you'd run in a terminal yourself.
- Switch providers per turn — pick Claude for one chat, Codex for the next; both configured in one panel.
- Edit your markdown directly — "rewrite this section, friendlier tone", "extract action items", "translate to English". Writes straight to disk atomically; the editor reloads.
- Read across folders you authorize — point the access map at a project folder and the AI sees yesterday's notes, your glossary, your style guide.
- Modify peer files — split a long doc into multiple notes, generate a summary alongside the source, build a TOC file for a folder.
- Search the web — toggle the
networktool on when you need fresh information. - Run shell commands — opt-in
bashtoggle for grepping notes, running a build, anything terminal. Default off. - Auto-snapshot every AI write — one-click Revert if the result isn't what you wanted.
- Pin one or more highlighted fragments — Visual and Code view.
- The AI receives only those fragments, not the entire document.
- Toggle Send off to keep pins visible without sending this turn.
- Paste a screenshot (
Ctrl+V), drag-drop an image, or pick from disk. - 8 MB per image, png / jpg / gif / webp / bmp.
- Both Claude and Codex see the image.
- Sent images stay in chat history as thumbnails so you remember what you passed.
Pin multiple highlighted fragments before sending — each appears as a numbered chip in the composer
- Every tool the model invokes shows up inline as a dashed chip in the transcript.
- Chip carries the tool name and a one-line preview of the arguments.
- Click to expand a pretty-printed JSON view of the full call.
- Covers Read, Edit, Write, Bash, WebFetch, codex shell — all of them.
Every tool the AI uses (Read, Edit, Write, Bash, WebFetch, ...) shows up inline as an expandable chip
- Every doc has its own scrollable thread history.
- + archives the current chat and starts a fresh one.
- Up to 50 threads per document, persisted in
localStorage. - Reopening an old thread restores the CLI, model, and reasoning effort you were using.
- Per-document access map: explicit read paths, write paths, tool toggles.
- Add files with + File, whole folders with + Folder.
- Pre-edit snapshots auto-rotated (default 3 + pinned), one-click Revert.
- Statusbar dot: green / red / blinking-red (bypass on).
- Append-only audit log of every AI action, viewable in Settings.
Per-document access map — explicit read / write paths plus tool toggles
Snapshot history — restore, pin, export or delete pre-edit revisions
- Switch
claude/codexfrom the chat header. - Per-CLI defaults persist (last model, last effort).
- Token streaming with a thinking indicator until the first chunk arrives.
- Segmented context-usage bar — input, cache, free — pulled from the CLI's reported usage.
- Clickable links open through the editor's external-link confirm dialog.
- Send shortcut:
Ctrl+Enter(Win/Linux),Cmd+Enter(macOS). - Minimize to a side tab, fullscreen, close — all in the panel header.
- Click AI on any diagram (or in fullscreen mermaid edit) — the main panel auto-pins the diagram source as scoped context and switches its preamble into mermaid-edit mode.
- Same panel, same model picker, same multi-turn conversation you use for prose.
- Each assistant reply is parsed for a
mermaidfenced block and rendered live in place of the saved diagram. - Apply ✓ / Discard × / Stop buttons appear in the panel chip; Apply commits to the node, Discard keeps iterating, Stop ends the session.
The full feature list — including snapshot rotation, tmp-recovery on crashed sessions, multi-window-safe streaming and per-CLI session isolation — lives in RELEASE_NOTES.md.
- Full GitHub Flavored Markdown (GFM) support
- WYSIWYG editor with live preview
- Syntax highlighting for code blocks (50+ languages)
- Tables, task lists, blockquotes, and more
- Keyboard shortcuts for efficient editing
- Configurable padding — top, side and bottom sliders in Settings
- Flowcharts, sequence, class, state, ER, Gantt, pie and many more diagram types
- Resizable in document — drag the right edge to set a custom width (persisted in markdown)
- Resizable split in fullscreen edit — drag the divider between code and preview pane
- AI assist — click AI on any diagram and the main AI panel takes over with the diagram pinned as context
- Quick templates — flowchart / sequence / class / state / ER / Gantt / pie / mindmap one-click inserts
- Multi-root sidebar — open one folder or many; each gets a collapsible section with its own file tree
- File tree — expand / collapse folders, open files in tabs, OS-level reveal, rename, delete, new file / new folder
- AI sees the workspace — workspace root is added to the AI preamble as a read-only scope automatically
- Quick switcher (
Ctrl+Shift+E) — workspaces, files, full-text grep across the active workspace - Drag to reorder workspaces; expanded folders persist between sessions
- Export to PDF — close to WYSIWYG: same serif font and scale as the editor, syntax-highlighted code blocks, coral inline code, content-sized tables
- Save as Markdown (.md files), clean portable format
- Editor padding settings translate into PDF margins
- Tab support with pin / context menu — Pin / Unpin / Close / Close others / Close all but pinned / Close saved
- Dark/Light themes plus a Minimal theme variant (Mermaid-logo palette: teal + coral on slate)
- Word-style zoom slider in the status bar —
±buttons + percentage readout - Character / word / line / token counters as a single movable unit
- Styled prompt / confirm dialogs throughout (no native browser modals)
- Auto-save — never lose your work
- Trilingual UI - English, Polish and Chinese interface
- Keyboard shortcuts modal - Quick reference for all shortcuts (
Ctrl+/)
- Split View - Edit two documents side by side with adjustable split ratio
- Compare Tabs - Diff comparison between left and right pane documents (
Ctrl+Shift+C) - Change Tracking - View all changes made since last save (
Ctrl+Shift+D) - Code View - Switch between visual WYSIWYG and raw Markdown with cursor position tracking
- AI Token Counter - Estimate tokens for GPT (OpenAI), Claude (Anthropic), and Gemini (Google)
- Multi-window support - Open multiple independent editor windows
- Cross-window tab management - Drag and drop tabs between panes and windows
- File watching - Automatically detects external file changes and reloads content
- Conflict detection - Shows inline diff when both local and external changes exist
- Manual reload - Reload file from disk with
Ctrl+R
Clean, minimalist interface with intuitive toolbar
Multi-tab editing with formatted documents and clickable table of contents
C4 Architecture diagrams with zoom controls and fullscreen mode
Fullscreen diagram view with 400% zoom for detailed inspection
Technical documentation with code blocks and embedded diagrams
Split view for editing two documents simultaneously
Compare documents side by side with line-level diff highlighting
View all changes made since last save with additions and deletions
Toggle between visual and Markdown code view with cursor tracking
Quick reference for all keyboard shortcuts (Ctrl+/)
AI token counter with model selection (GPT, Claude, Gemini)
Multiple windows with cross-window tab drag and drop
Download the latest version from the Releases page.
| Platform | Download |
|---|---|
| Windows | .exe / .msi installer |
| macOS | .dmg (universal: Apple Silicon + Intel) |
| Linux | .deb / .AppImage |
This app is open-source and not code-signed. Your OS may show a security warning on first launch:
- Windows (SmartScreen): Click "More info" → "Run anyway"
- macOS: Right-click the app → "Open" → "Open" to bypass Gatekeeper
This is standard behavior for open-source software distributed without a paid code signing certificate. The source code is fully available for review in this repository.
- Windows: Windows 10 or later (64-bit)
- macOS: macOS 10.15 (Catalina) or later
- Linux: Ubuntu 22.04+ or equivalent (WebKitGTK 4.1 required)
- Open a file:
Ctrl+O(orCmd+Oon macOS) - Save:
Ctrl+S(saves as Markdown) - Save As:
Ctrl+Shift+S - Export to PDF: Click the PDF button in toolbar
| Action | Shortcut |
|---|---|
| New file | Ctrl+N |
| Open file | Ctrl+O |
| Save | Ctrl+S |
| Save As | Ctrl+Shift+S |
| Export PDF | Ctrl+P |
| Undo | Ctrl+Z |
| Redo | Ctrl+Y |
| Bold | Ctrl+B |
| Italic | Ctrl+I |
| Show changes | Ctrl+Shift+D |
| Compare tabs | Ctrl+Shift+C |
| Reload file | Ctrl+R |
| Close tab | Ctrl+W |
| Next tab | Ctrl+Tab |
| Previous tab | Ctrl+Shift+Tab |
| Jump to tab 1–9 | Ctrl+1 … Ctrl+9 |
| Toggle Code / Visual view | Ctrl+Shift+V |
| Zoom in / out | Ctrl++ / Ctrl+- |
| Reset zoom | Ctrl+0 |
| Settings | Ctrl+, |
| Keyboard shortcuts | Ctrl+/ |
| Close modal | Escape |
On macOS, use
⌘(Cmd) in place ofCtrl.
Click the Mermaid button in the toolbar or type:
```mermaid
graph LR
A[Start] --> B[Process]
B --> C[End]
```This creates a flowchart:
[Start] --> [Process] --> [End]
graph/flowchart- Flow diagramssequenceDiagram- Sequence diagramsclassDiagram- Class diagramsstateDiagram-v2- State diagramserDiagram- Entity Relationship diagramsgantt- Gantt chartspie- Pie chartsjourney- User journey diagramsgitgraph- Git graphsmindmap- Mind mapstimeline- Timelines
# Clone the repository
git clone https://github.com/Vesperino/MerMarkEditor.git
cd MerMarkEditor
# Install dependencies
pnpm install
# Run in development mode
pnpm tauri dev
# Build for production
pnpm tauri build# Run tests
pnpm test
# Run tests once
pnpm test:run- Frontend: Vue 3 + TypeScript
- Editor: TipTap (ProseMirror-based)
- Diagrams: Mermaid.js
- Desktop: Tauri 2.0
- Build: Vite
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Codycody31 - Huge thanks for macOS and Linux support!
- TipTap - Headless editor framework
- Mermaid - Diagramming and charting tool
- Tauri - Desktop application framework
- Vue.js - Progressive JavaScript framework
MerMark is and will stay free and open source under the MIT license. If you find this project useful, please consider:
- Giving it a star on GitHub
- Reporting bugs and suggesting features
- Contributing to the codebase
- Buying me a coffee — totally optional, just a way to say thanks if MerMark saves you time
Made with ❤️ by Vesperino



