Yjs is a shared editing framework. It exposes Shared Types that can be manipulated like any other data type. But they are synced automatically!

Automatic Syncing

All interactive elements on this website are built with shared types. There are many extensions available for binding shared types to editors like ProseMirror, Quill, or CodeMirror.

Offline Support

No waiting for slow connections. Render the information you have and sync later.


Even if you don't build a peer-to-peer network, decentralized systems are faster, easier to scale, and more fault tolerant.


This website is a collection of collaborative demos. Try them out on different devices make sure to try them out while offline too. There are many more demos in the yjs-demos repository.

GitHub | Discuss | Gitter