JSPM

  • Created
  • Published
  • Downloads 14477
  • Score
    100M100P100Q127165F
  • License MIT

JSON OT database backend

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (sharedb) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    ShareDB

    NPM Version Test Coverage Status

    ShareDB is a realtime database backend based on Operational Transformation (OT) of JSON documents. It is the realtime backend for the DerbyJS web application framework.

    For help, questions, discussion and announcements, join the ShareJS mailing list or read the documentation.

    Please report any bugs you find to the issue tracker.

    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

    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, and require Ruby >2.4.0 and Bundler:

    gem install jekyll bundler

    The docs can be built locally and served with live reload:

    npm run docs:install
    npm run docs:start