By tool
| Tool | Edit together | Style any element | Move safely | Insert components | New components | Your own code | Edits are data | No server reads it | Open source | Text in git |
|---|---|---|---|---|---|---|---|---|---|---|
| Builder.io (Fusion) | yes | yes | partly | yes | yes | yes | no | no | partly | partly |
| Puck | no | partly | partly | yes | partly | yes | yes | no | yes | partly |
| Webstudio | no | yes | partly | yes | yes | partly | no | no | yes | no |
| Onlook | partly | yes | partly | partly | partly | yes | no | no | yes | yes |
| Plasmic | yes | yes | partly | yes | yes | yes | partly | no | partly | partly |
| GrapesJS | no | yes | partly | yes | partly | partly | no | no | yes | partly |
| Webflow, Framer | yes | yes | yes | yes | yes | partly | no | no | no | no |
| Lovable, v0, Bolt | no | yes | partly | partly | partly | yes | no | no | no | yes |
| Sanity, Storyblok, TinaCMS | partly | no | partly | yes | partly | yes | yes | no | partly | partly |
| Retool | yes | partly | partly | yes | yes | partly | no | no | no | partly |
| Google Docs, Notion | yes | partly | yes | partly | partly | no | yes | no | no | no |
| Tiptap, ProseMirror, BlockNote | yes | no | partly | partly | no | partly | yes | no | yes | no |
| editor planned | planned | planned | planned | planned | planned | planned | planned | planned | planned | planned |
yes partly no planned here, not built · hover a column for what it means
Builder.io (Fusion)
Visual builder and AI agent on your repo
The nearest shipped product: your components, your tokens, live cursors, and an agent that opens pull requests.
Better at Shipped, with AI that turns a visual change into a code change you can review.
Use it instead? If your edits can be code and a hosted service may read them, use it.
- Edit together
- Style any element
- Move safelyconcurrency model not published
- Insert components
- New components
- Your own code
- Edits are datathe agent writes code
- No server reads it
- Open sourceSDKs only
- Text in gitas pull requests of code
Searched, 2026-10-17 · source
Puck
Open-source React visual editor
The right model, data plus your own components, for one editor at a time.
Better at Ready today, small, MIT, and you own the JSON.
Use it instead? If one person edits at a time, use Puck.
- Edit together
- Style any elementfields each component declares, not CSS
- Move safelydrag, but one editor
- Insert components
- New componentsslots
- Your own code
- Edits are data
- No server reads it
- Open source
- Text in gitJSON, if you store it there
Searched, 2026-10-17 · source
Webstudio
Open-source visual builder, Webflow-like
The best open-source style panel; realtime editing is still being built.
Better at Full CSS power, breakpoints and states, polished.
Use it instead? For one designer building a site, use it.
- Edit togetherin progress
- Style any element
- Move safelydrag, but one editor
- Insert components
- New components
- Your own codeembeds rather than your app's components
- Edits are datacustom code embeds
- No server reads it
- Open sourceAGPL-3.0
- Text in git
Searched, 2026-10-17 · source
Onlook
Open-source visual editor for React code, with AI
Edits your real code visually; every edit is code.
Better at The source stays the only truth, and git holds every change.
Use it instead? For a developer who wants to style their own React app visually, use it.
- Edit togetherclaimed; sources conflict
- Style any element
- Move safely
- Insert components
- New components
- Your own code
- Edits are dataedits are JSX and Tailwind
- No server reads it
- Open source
- Text in git
Searched, 2026-10-17 · source
Plasmic
Visual builder that registers your code components
Composes your components visually, with hosted multiplayer.
Better at Mature component registration and code generation.
Use it instead? For a team that is happy with hosted editing, use it.
- Edit togetherhosted, not offline
- Style any element
- Move safely
- Insert components
- New components
- Your own code
- Edits are datacustom expressions
- No server reads it
- Open sourcecore open, service hosted
- Text in gitgenerated code
From memory, not yet re-checked, 2026-10-17 · source
GrapesJS
Open-source web-builder framework
An embeddable builder with a style manager, for one editor.
Better at Embeds in your own product, with a plugin ecosystem.
Use it instead? To give your users a page builder, use it.
- Edit togethercommunity Yjs plugins
- Style any element
- Move safely
- Insert components
- New components
- Your own code
- Edits are datascript components
- No server reads it
- Open source
- Text in gitHTML export
From memory, not yet re-checked, 2026-10-17 · source
Webflow, Framer
Closed visual site builders
Polished visual editing, in their format, on their servers.
Better at Years of polish, hosting, templates.
Use it instead? For a marketing site you'll never need to leave, use one.
- Edit togetherFramer fully; Webflow partly
- Style any element
- Move safely
- Insert components
- New components
- Your own codeFramer's code components
- Edits are datacustom code embeds
- No server reads it
- Open source
- Text in git
From memory, not yet re-checked, 2026-10-17 · source
Lovable, v0, Bolt
AI app generators with visual edit modes
Fast to a working app; every change, visual or typed, is generated code.
Better at Making a new app from a sentence.
Use it instead? To start an app, use one, then edit it here.
- Edit together
- Style any element
- Move safely
- Insert components
- New componentsby prompt
- Your own code
- Edits are dataedits are code
- No server reads it
- Open source
- Text in git
From memory, not yet re-checked, 2026-10-17 · source
Sanity, Storyblok, TinaCMS
Content systems with click-to-edit on the real site
Edit the words on your real app, in fields; not its styles or layout.
Better at Content workflows, roles, scheduling, localisation.
Use it instead? Use both: a CMS for content, this for the page.
- Edit togetherSanity live; others no
- Style any element
- Move safely
- Insert components
- New componentsStoryblok's nested blocks
- Your own code
- Edits are data
- No server reads it
- Open sourceTina; Sanity's studio
- Text in gitTina
From memory, not yet re-checked, 2026-10-17 · source
Retool
Internal-tool builder
Multiplayer editing of real apps, for internal tools, closed.
Better at Data connections and admin panels.
Use it instead? For internal tools on your databases, use it.
- Edit together
- Style any element
- Move safely
- Insert components
- New components
- Your own code
- Edits are dataJavaScript in queries and fields
- No server reads it
- Open source
- Text in git
Searched, 2026-10-17 · source
Google Docs, Notion
Shared documents
The feel to match; documents, not apps.
Better at Editing words together, refined over a decade.
Use it instead? Use both: write there, build pages here.
- Edit together
- Style any elementtext formatting
- Move safelyNotion's blocks
- Insert components
- New componentsNotion's synced blocks
- Your own code
- Edits are data
- No server reads it
- Open source
- Text in git
From memory, not yet re-checked, 2026-10-17 · source
Tiptap, ProseMirror, BlockNote
Collaborative text-editor toolkits
Building blocks for the typing part; we use ProseMirror.
Better at Rich text, ready.
Use it instead? Part of this: ProseMirror is how you type here.
- Edit together
- Style any element
- Move safelya move is a delete and an insert
- Insert componentsyou build the blocks
- New components
- Your own codenode views you write
- Edits are data
- No server reads it
- Open source
- Text in git
Searched, 2026-10-17 · source
By need
Edit together
several people at once, offline then merged
Fully Builder.io (Fusion), Plasmic (hosted, not offline), Webflow, Framer (Framer fully; Webflow partly), Retool, Google Docs, Notion, Tiptap, ProseMirror, BlockNote
Partly Onlook (claimed; sources conflict), Sanity, Storyblok, TinaCMS (Sanity live; others no)
Style any element
point at it, see its styles, change them
Fully Builder.io (Fusion), Webstudio, Onlook, Plasmic, GrapesJS, Webflow, Framer, Lovable, v0, Bolt
Partly Puck (fields each component declares, not CSS), Retool, Google Docs, Notion (text formatting)
Move safely
a block moved while someone edits it keeps their edit
Fully Webflow, Framer, Google Docs, Notion (Notion's blocks)
Partly Builder.io (Fusion) (concurrency model not published), Puck (drag, but one editor), Webstudio (drag, but one editor), Onlook, Plasmic, GrapesJS, Lovable, v0, Bolt, Sanity, Storyblok, TinaCMS, Retool, Tiptap, ProseMirror, BlockNote (a move is a delete and an insert)
Insert components
from a library, with a form for its settings
Fully Builder.io (Fusion), Puck, Webstudio, Plasmic, GrapesJS, Webflow, Framer, Sanity, Storyblok, TinaCMS, Retool
Partly Onlook, Lovable, v0, Bolt, Google Docs, Notion, Tiptap, ProseMirror, BlockNote (you build the blocks)
New components
made from existing ones, without code
Fully Builder.io (Fusion), Webstudio, Plasmic, Webflow, Framer, Retool
Partly Puck (slots), Onlook, GrapesJS, Lovable, v0, Bolt (by prompt), Sanity, Storyblok, TinaCMS (Storyblok's nested blocks), Google Docs, Notion (Notion's synced blocks)
Your own code
components with behaviour from the app's source
Fully Builder.io (Fusion), Puck, Onlook, Plasmic, Lovable, v0, Bolt, Sanity, Storyblok, TinaCMS
Partly Webstudio (embeds rather than your app's components), GrapesJS, Webflow, Framer (Framer's code components), Retool, Tiptap, ProseMirror, BlockNote (node views you write)
Edits are data
nothing an edit writes can run
Fully Puck, Sanity, Storyblok, TinaCMS, Google Docs, Notion, Tiptap, ProseMirror, BlockNote
Partly Plasmic (custom expressions)
No server reads it
kept on your devices, or encrypted end to end
Fully none we found
Open source
and you can run it yourself
Fully Puck, Webstudio (AGPL-3.0), Onlook, GrapesJS, Tiptap, ProseMirror, BlockNote
Partly Builder.io (Fusion) (SDKs only), Plasmic (core open, service hosted), Sanity, Storyblok, TinaCMS (Tina; Sanity's studio)
Text in git
the page is readable text you can commit
Fully Onlook, Lovable, v0, Bolt
Partly Builder.io (Fusion) (as pull requests of code), Puck (JSON, if you store it there), Plasmic (generated code), GrapesJS (HTML export), Sanity, Storyblok, TinaCMS (Tina), Retool
What we found
No tool we found is open source, keeps edits as data, merges concurrent moves safely and keeps the page off any server, on a real app. The nearest are Builder.io, shipped and closest in feel, where edits become code on a hosted service, and Puck, whose model of data plus your own components is ours, for one editor at a time. Not finding a tool is not proof there isn't one: tell us.