New in 0.3.3Type and spacing that match Notion

Markdown, edited like a page.

MDotion is a block editor for .md files. Slash menu, drag-and-drop blocks, an outline to reorder sections and tables you can paste from a spreadsheet, while the file on disk stays plain Markdown.

Free and open source · No account · No telemetry

release
status
In progress
owner
Docs team

Release checklist

Everything you need to ship v1.0, written in plain Markdown.

Type / anywhere to add a block.

Before the release

---status: In progressowner: Docs team---# Release checklistEverything you need to ship **v1.0**, written in plain Markdown.> [!TIP]> Type `/` anywhere to add a block.## Before the release- [x] Freeze the feature list- [x] Update the changelog- [ ] Record the demo video
The same file, two views. Tick a to-do, then switch to Markdown.

Features

Everything a page needs.
Nothing your files don't.

Write like in Notion, keep Markdown that Git and GitHub understand.

New in 0.3

See what changed since your last commit

The diff you read in every pull request: line numbers, red and green lines, the words that changed. Switch to Rendered to review the page itself.

release.md+2 −1

New in 0.3

Find and replace

Match case, whole words, regular expressions. Replace all is one undo.

AdaGrace owns authentication.

Ask AdaGrace before merging.

Billing: AdaGrace and Linus.

New in 0.3

Notion's shortcuts

⌘⌥4 to ⌘⌥9 turn a block into a to-do, a list, code or a callout.

Ship the release
Ship the release
⌘⌥4⌘⌥5⌘⌥8⌘⌥9⌘⌥1

New in 0.3

Every shortcut, one key away

⌘⌥K lists them all. The editor's commands can be rebound in VS Code.

Paste a spreadsheet

Copy a range in Excel or Google Sheets and paste it: a clean GFM table, numbers still aligned. Then edit it like a sheet.

Q4 roadmap

Pulled from the planning sheet:

FeatureOwnerPoints
AuthenticationAda5
NotificationsLinus8
BillingGrace13
roadmap.md+5 lines
# Q4 roadmapPulled from the planning sheet:

Move whole sections

Drag a heading in the outline: its content moves with it, and in Git the lines just change place.

Architecture

Overview

Four services behind a single gateway.

Components

Gateway, auth, billing and the event store.

Security

Encrypted in transit. Secrets live in the vault.

architecture.md3 lines moved · nothing rewritten
# Architecture## OverviewFour services behind a single gateway.## ComponentsGateway, auth, billing and the event store.## SecurityEncrypted in transit. Secrets live in the vault.

Type /

Callouts, to-dos, tables and code from the slash menu, saved as Markdown GitHub renders.

Release notes

Version 0.3 ships a diff view.

release-notes.mdA GitHub alert
# Release notesVersion 0.3 ships a diff view.

Diffs stay clean

Only the blocks you touch are rewritten. Tick a to-do and Git shows exactly that one line.

Release checklist

Before the release

  • Freeze the feature list
  • Update the changelog
  • Record the demo video
release.md1 line changed · the rest byte for byte
# Release checklist## Before the release- [x] Freeze the feature list- [x] Update the changelog- [ ] Record the demo video

Fold what you're not working on

Click the chevron of a heading, or press ⌘⌥↑. The file never changes.

Architecture

Overview

Four services behind a single gateway.

Components2 blocks

Gateway, auth, billing and the event store.

Each one deploys on its own.

Security

Encrypted in transit.

Source is one shortcut away

⌘⌥M switches between the page and its Markdown in the same tab, unsaved changes included.

Launch plan

Write the announcement

Post it on Friday

Ask for feedback in the issues.
# Launch plan

- [x] Write the announcement
- [ ] Post it on Friday

> [!TIP]
> Ask for feedback in the issues.
  • Callouts saved as GitHub alerts
  • Front matter as page properties
  • Code blocks with syntax highlighting
  • Drag blocks by their handle
  • HTML and anything else kept verbatim
  • Light and dark themes
  • AI chat links to .md files open here

Install MDotion

It never takes over your Markdown on its own. Open a .md file and click the book icon, or let it become your default editor when it asks.

Or paste this into Quick Open (⌘P / Ctrl+P)
ext install MDotion.mdotion-editor

Questions

Something else? Open an issue on GitHub.

Does MDotion change my files?

Only the blocks you edit. Everything else is written back byte for byte, so formatting, spacing and line endings you did not touch stay exactly as they were.

What happens to Markdown the editor can’t show?

HTML, reference definitions, badges and anything else the editor cannot represent are kept verbatim as source blocks, with a sanitised preview. Nothing is dropped.

Which Markdown does it support?

CommonMark and GitHub Flavored Markdown (tables, task lists, strikethrough, autolinks) plus GitHub alerts are editable visually. Everything else is preserved.

Where do column widths and folded sections go?

Not into your file. Markdown has no syntax for them, so MDotion keeps them in your editor’s workspace state. Resizing a column or folding a section never marks the file as modified.

Do I need an account? Does it send anything anywhere?

No account. MDotion runs entirely inside your editor, collects no telemetry, makes no network requests of its own and never uploads your files.

Will it replace the default Markdown editor?

Only if you say so. The first time you open a Markdown file it asks, and you can change your mind at any time from the command palette.

Do plans from Claude Code or Cursor open in MDotion?

Yes. Plans, specs and notes written with AI are plain Markdown files. Once MDotion is your default editor, the .md links you click in the Claude Code or Cursor chat open straight in it, not in the text editor. Links to a specific line still open the source.

Is MDotion affiliated with Notion?

No. MDotion is an independent open-source project. “Notion-style” only describes the editing experience.