Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/share/sharedb
Realtime database backend based on Operational Transformation (OT)
https://github.com/share/sharedb
Last synced: 7 days ago
JSON representation
Realtime database backend based on Operational Transformation (OT)
- Host: GitHub
- URL: https://github.com/share/sharedb
- Owner: share
- License: other
- Created: 2013-04-01T21:30:46.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2024-04-02T17:09:51.000Z (7 months ago)
- Last Synced: 2024-04-14T18:15:27.315Z (7 months ago)
- Language: JavaScript
- Homepage:
- Size: 3.62 MB
- Stars: 5,977
- Watchers: 109
- Forks: 438
- Open Issues: 144
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome - share/sharedb - Realtime database backend based on Operational Transformation (OT) (JavaScript)
- my-awesome - share/sharedb - 10 star:6.2k fork:0.5k Realtime database backend based on Operational Transformation (OT) (JavaScript)
- awesome-nodejs - sharedb - Realtime database backend based on Operational Transformation (OT). ![](https://img.shields.io/github/stars/share/sharedb.svg?style=social&label=Star) (Repository / Database)
- awesome-github-repos - share/sharedb - Realtime database backend based on Operational Transformation (OT) (JavaScript)
- awesome-viz - ShareDB - Realtime database backend based on Operational Transformation (OT). ([↑](#contents) Collaborative)
- awesome-list - sharedb
- awesome-starred - share/sharedb - Realtime database backend based on Operational Transformation (OT) (others)
- awesome-front-end-system-design - ShareDB
README
# ShareDB
[![NPM Version](https://img.shields.io/npm/v/sharedb.svg)](https://npmjs.org/package/sharedb)
![Test](https://github.com/share/sharedb/workflows/Test/badge.svg)
[![Coverage Status](https://coveralls.io/repos/github/share/sharedb/badge.svg?branch=master)](https://coveralls.io/github/share/sharedb?branch=master)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
[](examples/counter)
### Leaderboard
[](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
```