JSPM

json-joy

18.12.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 88275
  • Score
    100M100P100Q156273F
  • License AGPL-3.0-only

Collection of libraries for building collaborative editing apps.

Package Exports

  • json-joy
  • json-joy/esm/json-patch
  • json-joy/esm/json-patch/index.js
  • json-joy/lib/index.js
  • json-joy/lib/json-crdt
  • json-joy/lib/json-crdt-diff/JsonCrdtDiff
  • json-joy/lib/json-crdt-diff/JsonCrdtDiff.js
  • json-joy/lib/json-crdt-extensions
  • json-joy/lib/json-crdt-extensions/index.js
  • json-joy/lib/json-crdt-extensions/peritext
  • json-joy/lib/json-crdt-extensions/peritext/block/Inline
  • json-joy/lib/json-crdt-extensions/peritext/block/Inline.js
  • json-joy/lib/json-crdt-extensions/peritext/block/LeafBlock
  • json-joy/lib/json-crdt-extensions/peritext/block/LeafBlock.js
  • json-joy/lib/json-crdt-extensions/peritext/events
  • json-joy/lib/json-crdt-extensions/peritext/events/defaults/ui/UiHandle
  • json-joy/lib/json-crdt-extensions/peritext/events/defaults/ui/UiHandle.js
  • json-joy/lib/json-crdt-extensions/peritext/events/index.js
  • json-joy/lib/json-crdt-extensions/peritext/index.js
  • json-joy/lib/json-crdt-extensions/peritext/rga/Point
  • json-joy/lib/json-crdt-extensions/peritext/rga/Point.js
  • json-joy/lib/json-crdt-extensions/peritext/rga/Range
  • json-joy/lib/json-crdt-extensions/peritext/rga/Range.js
  • json-joy/lib/json-crdt-extensions/peritext/rga/constants
  • json-joy/lib/json-crdt-extensions/peritext/rga/constants.js
  • json-joy/lib/json-crdt-extensions/peritext/slice/Slice
  • json-joy/lib/json-crdt-extensions/peritext/slice/Slice.js
  • json-joy/lib/json-crdt-extensions/peritext/slice/constants
  • json-joy/lib/json-crdt-extensions/peritext/slice/constants.js
  • json-joy/lib/json-crdt-extensions/peritext/slice/util
  • json-joy/lib/json-crdt-extensions/peritext/slice/util.js
  • json-joy/lib/json-crdt-patch
  • json-joy/lib/json-crdt-patch/codec/compact
  • json-joy/lib/json-crdt-patch/codec/compact/decode
  • json-joy/lib/json-crdt-patch/codec/compact/decode.js
  • json-joy/lib/json-crdt-patch/codec/compact/encode
  • json-joy/lib/json-crdt-patch/codec/compact/encode.js
  • json-joy/lib/json-crdt-patch/codec/compact/index.js
  • json-joy/lib/json-crdt-patch/codec/verbose/encode
  • json-joy/lib/json-crdt-patch/codec/verbose/encode.js
  • json-joy/lib/json-crdt-patch/constants
  • json-joy/lib/json-crdt-patch/constants.js
  • json-joy/lib/json-crdt-patch/index
  • json-joy/lib/json-crdt-patch/index.js
  • json-joy/lib/json-crdt-patch/schema.js
  • json-joy/lib/json-crdt/codec/indexed/binary/Decoder
  • json-joy/lib/json-crdt/codec/indexed/binary/Decoder.js
  • json-joy/lib/json-crdt/codec/indexed/binary/Encoder
  • json-joy/lib/json-crdt/codec/indexed/binary/Encoder.js
  • json-joy/lib/json-crdt/codec/sidecar/binary/Encoder
  • json-joy/lib/json-crdt/codec/sidecar/binary/Encoder.js
  • json-joy/lib/json-crdt/codec/structural/compact/Encoder
  • json-joy/lib/json-crdt/codec/structural/compact/Encoder.js
  • json-joy/lib/json-crdt/codec/structural/verbose/Encoder
  • json-joy/lib/json-crdt/codec/structural/verbose/Encoder.js
  • json-joy/lib/json-crdt/index
  • json-joy/lib/json-crdt/index.js
  • json-joy/lib/json-crdt/json-patch/JsonPatch
  • json-joy/lib/json-crdt/json-patch/JsonPatch.js
  • json-joy/lib/json-crdt/json-patch/JsonPatchStore
  • json-joy/lib/json-crdt/json-patch/JsonPatchStore.js
  • json-joy/lib/json-crdt/log/Log
  • json-joy/lib/json-crdt/log/Log.js
  • json-joy/lib/json-crdt/log/codec/LogDecoder
  • json-joy/lib/json-crdt/log/codec/LogDecoder.js
  • json-joy/lib/json-crdt/log/codec/LogEncoder
  • json-joy/lib/json-crdt/log/codec/LogEncoder.js
  • json-joy/lib/json-crdt/model
  • json-joy/lib/json-crdt/model/index.js
  • json-joy/lib/json-crdt/schema/toSchema
  • json-joy/lib/json-crdt/schema/toSchema.js
  • json-joy/lib/json-patch
  • json-joy/lib/json-patch/index.js
  • json-joy/lib/util/diff/str
  • json-joy/lib/util/diff/str.js
  • json-joy/lib/util/dom
  • json-joy/lib/util/dom.js
  • json-joy/lib/util/events/sync-store
  • json-joy/lib/util/events/sync-store.js
  • json-joy/lib/util/throttle
  • json-joy/lib/util/throttle.js

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 (json-joy) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

json-joy

npm version

json-joy library implements cutting-edge real-time and collaborative editing algorithms and other utilities for JSON data models. Major focus of json-joy is development of the JSON CRDT protocol, a Conflict-free Replicated Data Type that enables seamless merging of changes in JSON data models, avoiding conflicts between replicas.

Notable features

  • Full JSON implementation as a CRDT (Conflict-free Replicated Datatype).
  • The fastest list CRDT implementation in JavaScript.
  • The fastest text OT (Operational Transformation) implementation in JavaScript.
  • The fastest implementation of CBOR, DAG-CBOR, MessagePack, UBJSON, and JSON codecs in JavaScript.
  • The fastest (HTTP) router implementation in JavaScript.
  • The fastest JSON schema validation implementation in JavaScript.
  • Very fast binary tree (Radix, AVL, Red-black*, Splay) implementations in JavaScript.
  • Very fast JSON Patch (and JSON Pointer) implementation in JavaScript, including many non-standard operations, and JSON Predicate implementation.
  • Very fast JSON Expression implementation in JavaScript.

Funding

This project is funded through NGI Zero Core, a fund established by NLnet with financial support from the European Commission's Next Generation Internet program. Learn more at the NLnet project page.

NLnet foundation logo NGI Zero Logo