Feature story
The quiet rewrite that made the editor feel instant
Over the last nine months the platform team tore out the editor's rendering loop and replaced it with a reactive store, a lazy layout engine, and a paint scheduler that never blocks on the main thread. The result is a surface that finally keeps up with the people typing on it.
The old editor was honest about its age. Every keystroke triggered a full virtual DOM diff, every selection change walked the entire block tree, and every plugin that wanted to read the document did so by locking a single shared state object. On a twenty-page brief the cursor could drift by a full frame behind the keyboard. Nobody who used the product every day thought that was acceptable — but untangling it took longer than any single sprint could hold.
The rewrite started with a simple principle: the document should be the source of truth, and everything rendered should be a derived projection of it. The team moved the document into a reactive store with fine-grained subscriptions, so a plugin that cares about headings only re-reads when headings change. Layout moved into a lazy engine that measures a block the first time it scrolls into view and caches the result until the content changes.
Paint was the last piece. The new scheduler batches every DOM mutation inside a single rAF callback, runs layout reads before writes, and hands control back to the browser before the frame budget runs out. If the budget is tight the scheduler drops the least-visible work rather than drop a frame. The input loop never waits on paint.
The shipped numbers are the part most teams care about, but the part we care about is the feeling. When you hold the arrow key down and the cursor tracks your fingertip across a 40-page document without a single stutter, the editor stops feeling like software and starts feeling like paper.
Key features
- Reactive store with fine-grained subscriptions for every plugin
- Lazy layout engine that measures blocks on first scroll into view
- Paint scheduler that drops work, never frames, under pressure
14 minute read · Updated April 9, 2026