discover · compare · collections · requirements · contribute · feed · watching · stats · help with your tokens
share/sharedb · source
Snapshot 0 · 2026-11-04T12:47:22Z · JavaScript ·
Content fingerprint
6816ffccaf3d9a66563e32bb957268b53e316c69102ab827b00d1db74e04aee5GitHub description at capture
Realtime database backend based on Operational Transformation (OT)
README at capture
# ShareDB [](https://npmjs.org/package/sharedb)  [](https://coveralls.io/github/share/sharedb?branch=main) ShareDB is a realtime database backend based on [Operational Transformation (OT)](https://en.wikipedia.org/wiki/Operational_transformation) of JSON documents. It is the realtime backend for the [DerbyJS web application framework](http://derbyjs.com/). For help, questions, discussion and announcements, join the [ShareJS mailing list](https://groups.google.com/forum/?fromgroups#!forum/sharejs) or [read the documentation](https://share.github.io/sharedb/ ). Please report any bugs you find to the [issue tracker](https://github.com/share/sharedb/issues). ## Features - Realtime synchronization of any JSON document - Concurrent multi-user collaboration - Synchronous editing API with asynchronous eventual consistency - Realtime query subscriptions - Simple integration with any database - Horizontally scalable with pub/sub integration - Projections to select desired fields from documents and operations - Middleware for implementing access control and custom extensions - Ideal for use in browsers or on the server - Offline change syncing upon reconnection - In-memory implementations of database and pub/sub for unit testing - Access to historic document versions - Realtime user presence syncing ## Documentation https://share.github.io/sharedb/ ## Examples ### Counter [<img src="examples/counter/demo.gif" height="300">](examples/counter) ### Leaderboard [<img src="examples/leaderboard/demo.gif" height="436">](examples/leaderboard) ## Development ### Documentation The documentation is stored as Markdown files, but sometimes it can be useful to run these locally. The docs are served using [Jekyll](https://jekyllrb.com/), and require Ruby >2.4.0 and [Bundler](https://bundler.io/): ```bash gem install jekyll bundler ``` The docs can be built locally and served with live reload: ```bash npm run docs:install npm run docs:start ```