diff --git a/vue/editor/docs/01-playground.vue b/vue/editor/docs/01-playground.vue
new file mode 100644
index 0000000..8272aed
--- /dev/null
+++ b/vue/editor/docs/01-playground.vue
@@ -0,0 +1,309 @@
+
+
+
+
+
+
+ A live
+ Edit the document directly. Select text to format it with the bubble menu,
+ or type / on an empty line to open the block menu. Enter splits a block,
+ Backspace at the start merges into the previous one, and
+ ⌘/Ctrl+Z undoes.
+
+ The editor is created from a registry and a document, then rendered with a single
+
+ See Playground
+ @robonen/editor instance built with the default registry. Everything
+ below is the real editor — the same headless controller, single-contenteditable view, and
+ CRDT-backed model documented in the API reference.
+ Try it
+ How it's wired
+ EditorRoot over one contenteditable host — the toolbar above just dispatches
+ the same commands you'd call programmatically.
+
Jump into the pieces you'll reach for first:
EditorRoot and EditorContent — the mount
surface and the single contenteditable.