yjs /yjs

Shared data types for building collaborative software

★ 23,042⑂ 819
JavaScriptCreated 2014-07-29docs.yjs.dev
23,042
stars
+22+26+126
819
forks
–
watchers
–
prs
–
issues
–
releases
–
discussions

README

!Yjs

 A CRDT framework with a powerful abstraction of shared data

Yjs is a CRDT implementation that exposes its internal
data structure as shared types. Shared types are common data types like Map
or Array with superpowers: changes are automatically distributed to other
peers and merged without merge conflicts.

Yjs is network agnostic (p2p!), supports many existing rich text
editors, offline editing, version snapshots, undo/redo and
shared cursors. It scales well with an unlimited number of users and is well
suited for even large documents.

 Demos: https://github.com/yjs/yjs-demos
 Discuss: https://discuss.yjs.dev
 Chat: Gitter | Discord
 Benchmark Yjs vs. Automerge:
  https://github.com/dmonad/crdt-benchmarks
 Podcast "Yjs Deep Dive into real time collaborative editing solutions":
 Podcast "Google Docs-style editing in Gutenberg with the YJS framework":

:construction_worker_woman: If you are looking for professional support, please
consider supporting this project via a "support contract" on
GitHub Sponsors. I will attend your issues
quicker and we can discuss questions and problems in regular video conferences.
Otherwise you can find help on our community discussion board.

 Sponsorship

Yjs is MIT licensed and free to use. However, if you use Yjs in a commercial
application, there is a social expectation to sponsor the project
financially. It's what keeps Yjs maintained.


 Professional Support

 Support Contract with the Maintainer -
By contributing financially to the open-source Yjs project, you can receive
professional support directly from the author. This includes the opportunity for
weekly video calls to discuss your specific challenges.
 Synergy Codes - Specializing in
consulting and developing real-time collaborative editing solutions for visual
apps, Synergy Codes focuses on interactive diagrams, complex graphs, charts, and
various data visualization types. Their expertise empowers developers to build
engaging and interactive visual experiences leveraging the power of Yjs. See
their work in action at Visual Collaboration
Showcase.

 Who is using Yjs

 AFFiNE A local-first, privacy-first, open source
  knowledge base. :star2:
 Cargo Site builder for designers and artists :star2:
 Gitbook Knowledge management for technical teams :star2:
 Evernote Note-taking app :star2:
 Lessonspace Enterprise platform for virtual
  classrooms and online training :star2:
 Ellipsus - Collaborative writing app for storytelling etc.
  Supports versioning, change attribution, and "blame". A solution for the whole
  publishing process (also selling) :star:
 Dynaboard Build web apps collaboratively. :star:
 Relm A collaborative gameworld for teamwork and
  community. :star:
 Huly - Open Source All-in-One Project Management Platform
 Room.sh A meeting application with integrated
  collaborative drawing, editing, and coding tools. :star:
 Nimbus Note A note-taking app designed by
  Nimbus Web. :star:
 Pluxbox RadioManager A web-based app to
  collaborative

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON