Skip to content
Get started— browse docs
On this page

Step 1: What you're building

A shared notes board, built by hand in nine short steps — right here, no install required.

Nine steps. By the end you'll have built this, from nothing, by hand:

bestiary — where you're headed
src/tool.tsx

Edit and the example re-runs. Tab indents; press Escape to leave the editor.

Running · your edits, live
Starting the example…

Add a note. Type in it. Nothing here is mocked — that's a real collaborative document, the same kind every vvd tool reads and writes. You're about to build it yourself, one small edit at a time, on this page.

One thing to know before you read any of that code: in a real project it isn't one file. It's two — src/codec.ts (the data shape) and src/tool.tsx (the view) — glued together here only because this page has no bundler. Step 2 explains what each one is for, and every step after tells you which of the two you're editing.

You should see: your note stays on the board after you type it. That's the finished state — now we start from zero and build back up to it.

You will learn

  • The two files every vvd tool is made of, and what each one is for
  • How to declare a field and read it back — no sync code, ever
  • What "two people, one document" actually looks like, live, not described
  • How the same file you build here becomes a real project with one CLI command

How this works

Every step below is a small, editable version of the tool above, seeded with whatever the previous step left you with. You'll get one instruction, make one edit, and see the running tool change. Stuck? Every step has a Show me button — it writes in the answer, no penalty, no judgment.

Nothing here needs the CLI installed. That part shows up right at the end, once there's something worth running for real.