Block-Based Editor
Page
Paste plain text
markers are recognised#, ## and ### become headings; - and 1. become lists; [ ] and [x] become to-dos; > becomes a quote; ! becomes a callout and --- a divider.
Page stats
Markdown export
# Launch page ## Field notes - [x] Book the hall - [ ] Print the signs 1. First step > A remembered line
Outline
Launch page - Field notes
Scope and limits
Every edit — retyping, changing a block's type, ticking a to-do, moving or removing a block — goes through the same model, so the Markdown export always matches the page on screen, and the page keeps at least one block to type in.
Blocks are flat: there is no nesting, dragging, images, columns or inline formatting, and nothing is saved between visits. Paste the Markdown into your own notes app to keep it.
The block-based editor builds a page from typed blocks — headings, lists, to-dos, quotes, callouts and dividers — with reordering, a paste-to-structure step and a Markdown export that always matches the page.
What is Block-Based Editor?
The block-based editor treats a page as an ordered list of typed blocks, the way a Notion page is built. Ten types are available: paragraph, heading, subheading, minor heading, bulleted list, numbered list, to-do, quote, callout and divider. Each block carries its own text and identity, and every edit — retyping, changing a block's type, ticking a to-do, moving it or removing it — goes through the same model, so the page on screen and the export are never two different documents.
Pasting plain text is the fastest way in. The editor reads each line's marker and turns it into the matching block: # for a heading, ## and ### for the levels below, a leading dash for bullets, a number for ordered steps, brackets for to-dos, an angle bracket for quotes, an exclamation mark for callouts and three dashes for a divider. Anything unmarked becomes a paragraph. Text written in another app — meeting notes, a README, a chat log — usually arrives already structured, and the replace step keeps the page title while rebuilding the body.
To-dos are the blocks with state: each one carries a checked flag, the page counts how many are done, and the Markdown export writes them back as task list items. Blocks reorder with the up and down controls, insert below any block, and remove cleanly; identifiers are assigned by scanning the page, so a block keeps its identity across an edit and React never has to guess.
Three exports come off the same model. The Markdown export writes the title as the page's single h1, then one line per block: headings from h2 down, bullets, sequentially numbered steps, task list items, quotes, a note-style callout and a horizontal rule for dividers. The outline lists only the headings, indented by level, for navigation. The stats panel counts blocks, words, headings, empty blocks and to-do progress, with a per-type breakdown.
The outline export earns its place in longer pages. Read on its own it shows whether the headings form a sequence a reader could navigate — a page whose h2 blocks all sit under one h3, or whose headings repeat a phrase, is usually a page with a missing section rather than a wording problem. Because the outline is generated from the same blocks, editing a heading changes it immediately, and a section that has outgrown its heading shows up as a missing rung rather than a gut feeling.
Two rules keep the page whole. A page always keeps at least one block: removing the last one replaces it with an empty paragraph rather than leaving a document with nowhere to type. And a divider carries no text, so switching a block to a divider clears its content deliberately instead of hiding it behind an invisible type.
What the block-based editor leaves out is nesting. There are no sub-pages, columns, drag handles, images, tables or inline formatting inside a block, and nothing is saved between visits. That flatness is what makes the Markdown export exact and the model easy to reason about, and it is also the honest limit: a page that needs structure deeper than headings and lists needs a different tool.
How to use Block-Based Editor
- Type a page directly, or paste plain text and press the replace control to structure it.
- Set each block's type, or write its marker at the start of a pasted line.
- Tick to-dos, reorder blocks and add blocks below the one you are editing.
- Read the Markdown export and the outline, then copy or download them.
- Use the stats panel to catch empty blocks and unfinished to-dos.
When to use Block-Based Editor vs related tools
Use the block-based editor when a document is really a page of parts that will be reused: launch checklists, meeting notes that become task lists, a section of a README, a project page whose headings will become its outline. The Rich Text Editor is the alternative when the important thing is emphasis inside sentences rather than structure between them. For documents that are already a hierarchy of indented lines, the Outline Builder numbers and renders the outline directly, and the Scene & Chapter Organizer boards the same idea for fiction.
Privacy & Security
This tool runs entirely in your browser — no data ever leaves your device. There is no server round-trip, no upload, no logging, and no account required. Your input is processed locally using client-side JavaScript and is never stored, transmitted, or accessible to anyone else. When you close the tab, everything disappears.