Skip to main content

Build real-time collaborative apps

json-joy gives TypeScript teams the libraries, protocols, and specifications to build collaborative and local-first software on top of a conflict-free JSON data model.

Open source. Open specs. Conflict-free by design.

JSON CRDT Explorer application window
Playground

JSON CRDT Explorer

An app to explore, debug, and edit your JSON CRDT and plain JSON documents. Time travel, see patches, save in different formats, inspect CRDT internals.

Data, text, rich-text — one core.

json-joy can model all three in the same document.

Collaborative plain text

Text

Bind a json-joy text node to a DOM <input>, a <textarea>, or any code editor. The text stays mergeable across users, tabs, and devices.

JSON CRDT

JSON

Model full app or document state as conflict-free JSON. Concurrent edits from multiple users merge cleanly.

Collaborative rich text

Rich-text

Rich-text CRDT built on the same conflict-free JSON model. Concurrent formatting, structural edits, and offline changes converge cleanly, across users and AI co-authors.

Open source

Libraries

Drop-in packages that make up the json-joy stack.

Library

json-joy JavaScript

Reference implementation of JSON CRDT and other collaborative editing utilities.
TypeScript
Library

Collaborative React.js

React hooks, context, and components for binding UI to JSON CRDT models and nodes.
React.js
Library

Clickable JSON — UI

React components for rendering JSON and JSON CRDT documents as interactive clickable and editable trees.
React.js
Open standards

Specifications

The specs behind the protocols and data types.

Specificationworking draft

JSON CRDT

JSON (and CBOR) Conflict-free Replicated Data Type model semantics and algorithm specification.
Specificationworking draft

JSON CRDT Patch

Patch specification for JSON CRDT, a conflict-free data type for JSON documents.
Specificationworking draft

JSON Reactive RPC

JSON-Rx is a simple bi-directional messaging protocol which supports RPC, subscription streams, and one-way notifications.

What teams build with json-joy

01

Collaborative editors

Build text and rich-content experiences on top of a broader conflict-free JSON model.

02

Local-first internal tools

Keep structured state mergeable across users, devices, and offline sessions.

03

Multiplayer product workflows

Power shared dashboards, builders, and knowledge tools where concurrent edits are normal.

04

Sync-heavy developer products

Reuse open protocols and libraries instead of inventing a custom collaboration backend.