DotMD — write in Markdown, ship anything
Your Docs, Slides and Sheets — one plain-text format you own, rendered beautifully. Everything below is live: change a line and watch it re-render.
Jump anywhere. This index rebuilds itself as the headings change, and every entry is a working link:
Why teams pick DotMD
Six reasons, six columns — a width the toolbar's column menu does not even offer. Only the Markdown source can ask for six, which is rather the point:
Write
Plain text you own.
Diagram
One fenced block.
Present
The very same file.
Compute
A live workbook.
Automate
Agents, over MCP.
Export
Clean .md, anywhere.
The same block re-flows to any width from two to six. Here it is again at three:
For writers
Outline, draft and publish from one plain-text source.
For teams
Comment, assign and ship together in real time.
For agents
Read and write that same file over the Model Context Protocol.
Callouts that carry the point
Start a blockquote with [!TIP] — or pick one from the / menu — and it becomes a styled admonition. All five kinds ship, each with its own accent and glyph:
Note
Five kinds ship out of the box: Note, Tip, Warning, Important and Caution.
Tip
Type / on an empty line to insert any block in this tour.
Important
Callouts are plain Markdown underneath, so they survive export, GitHub, and every editor on earth.
Warning
An unknown kind falls back to an ordinary blockquote — no error, no broken box.
Caution
The marker has to be the first line inside the quote, on its own.
The marks laboratory
Bold, italic, strikethrough, underline, highlight, a highlight in a colour you choose, and inline code — chained freely in one sentence, next to a link to dotmd.co.
Even the science reads naturally: E = mc2 and H2O.
DotMD vs. the alternatives
| Capability | DotMD | Generic docs | Slide tools |
|---|---|---|---|
| Markdown-native source | Yes | Partial | No |
| Docs, Slides and Sheets in one format | Yes | No | No |
| Live formula engine | 76 functions | No | No |
| AI with your own key (BYOK) | Yes | No | No |
| Agent access over MCP | Yes | No | No |
Diagrams from a code fence
Describe the flow; DotMD draws it. A mermaid fence renders as live SVG — edit the text and the picture follows:
flowchart LR
A[One .md file] --> B{DotMD}
B --> C[Docs]
B --> D[Slides]
B --> E[Sheets]
C --> F[(Your repo)]
D --> F
E --> F
There is no diagram-type allow-list — anything Mermaid parses renders — so a sequence diagram is the same three backticks:
sequenceDiagram You->>DotMD: Write plain Markdown DotMD->>Agent: Expose the file over MCP Agent-->>DotMD: Draft an edit with your key DotMD-->>You: Same file, still plain text
Code, kept verbatim
Drop in a fenced block and every character survives — runbooks, snippets, docs-as-code:
# Publish a doc straight from your terminal via MCP
dotmd push ./release-notes.md --workspace northstar
// Or edit it with your own model key (BYOK)
const draft = await dotmd.ai.edit(doc, { prompt: 'tighten the intro' });
Note
Code is syntax-highlighted while you edit. On a published page or a guest link it renders monochrome — the highlighter is an editor decoration, not part of the exported HTML.
See it running
Put a link from any of twenty-two providers on a line of its own and DotMD turns it into a live, sandboxed frame you can resize by its corner — the size is written back into the Markdown, so it round-trips. The clip below is an open-licence demo reel; drop your own URL in its place:
- Video and audio — YouTube, Vimeo, Loom, Spotify, SoundCloud
- Design and whiteboards — Figma, Canva, Miro
- Code — CodePen, CodeSandbox, StackBlitz, GitHub Gist
- Docs and data — Google Docs, Sheets, Slides, Drive, Maps
- Social — X, Instagram, TikTok, Reddit, LinkedIn
Important
A live frame is the one construct that cannot be printed, so this document exports to Markdown and HTML rather than PDF. Delete the frame above and PDF export comes straight back — swap in your own link first to see the trade for yourself.
Footnotes, the civilized way
Make the claim, cite it inline, and keep reading1. DotMD superscripts each reference and gathers the definitions at the end of the document, with back-links, so nobody loses their place2.
Everything else lives in the chrome
The Markdown is only half the product; the chrome around this document is the other half. A reference list belongs behind a disclosure rather than in the middle of a page, so here is one:
Ten things to try from the toolbar
- View modes — flip between hybrid, split and read-only.
- Focus mode — dim everything except the block you are writing.
- Pages and page breaks — preview true page boundaries.
- Find and replace — search the doc, replace one match or all.
- Comments and mentions — select a sentence to start a thread.
- Live presence — invite a collaborator, watch the cursors light up.
- Version history — every change kept, any point restorable.
- Slash menu — type / on an empty line to insert any block above.
- Anchor links — hover a heading to copy a deep link to it.
- Export — Markdown or HTML from the more menu.
Shipped, and on the way
- Markdown-native Docs, Slides and Sheets
- Real-time collaboration with comments and multiplayer cursors
- BYOK AI editing and summaries
- Agent access over MCP
- Native desktop and mobile apps
- Offline-first sync everywhere
Ready in three steps
- Create a workspace and invite your team.
- Import your existing Markdown, or start from a sample like this one.
- Turn on AI with your own key and ship.
Lost your place? Jump back to why teams pick DotMD — every heading here is a deep link, and hovering one copies it. Then export this document to Markdown or HTML: your words, your format, anywhere.
Made with DotMD — and with nothing but a .md file. A paragraph can set its own alignment and line height; the inline Markdown inside it still parses.