Everything in the box
A complete markdown workflow. Edit locally, preview in the browser, export and share — from any machine, any shell.
CLI bridge
Run one command, connect your local folder to the web editor. Edits sync bidirectionally over WebSocket — change a file locally and the browser updates instantly, edit in the browser and the file saves to disk.
Works everywhere Node.js runs, including over SSH. No daemon, no config file, no background process to manage.
Live preview
Side-by-side editor and preview with scroll sync. Mermaid and D2 diagrams render inline as you type. Toggle between split view, editor-only, and preview-only layouts.
Scroll sync keeps your position aligned between editor and preview pane — even in long documents with diagrams.
Publication-quality PDF export
Generate beautiful, print-ready PDFs powered by Pandoc and Typst. No headless browser, no wkhtmltopdf — just clean typographic output with proper page breaks, headers, and table of contents.
Mermaid and D2 diagrams are pre-rendered server-side and embedded as crisp vector graphics. Async export pipeline means large documents with complex diagrams export without blocking. HTML export also available.
Share links
Generate a share link for any document. Optionally set a password or restrict to read-only. Recipients see a polished rendered view, not raw markdown.
Token-based auth with bcrypt-hashed passwords. Read-write shares let collaborators edit directly.
GitHub integration
Connect GitHub repos, browse files with ghost items that lazy-load on demand, edit in the web editor, and submit PRs — all without cloning.
OAuth-based, tokens encrypted at rest. Ghost items keep large repos fast by loading content only when you open a file.
Collections
Group documents from different sources into collections. Create a curated set of docs for a project, a team, or a topic — regardless of where the files live.
Hierarchical items, drag-to-reorder, full-text search across all your documents and collections.
Diagrams
Mermaid.js renders client-side for instant feedback. D2 renders server-side with ETS caching for fast repeat views. Both render inline in the preview.
Security-level "strict" on Mermaid. D2 runs via CLI with semaphore-limited concurrency and timeouts.
CodeMirror 6 editor
Syntax highlighting, vim mode, keyboard-driven command palette, cheatsheet overlay, toolbar, and full-text search. Built on CodeMirror 6 for speed and extensibility.
Immersive mode for distraction-free writing: fullscreen, typewriter scrolling, paragraph focus.