A Javascript data representation library.


Substance.Data is a data representation framework for Javascript. It's being developed in the context of Substance, an open publishing platform.

  • Model your domain data using a simple graph-based object model that can be serialized to JSON.
  • Traverse your graph, including relationships using a simple API.
  • Manipulate and query data on the client (browser) or on the server (Node.js) by using exactly the same API.
  • Data.Graph (A data abstraction for all kinds of linked data)
  • Persistence (You can persist your data to a Data.Store)
  • Operational Transformation (for incremental updates)
  • Versioning (Every graph operation is remembered and can be reverted)

Using the latest NPM release

$ npm install substance-data

Or clone from repository

$ git clone
$ cd data 
$ npm install

For running the testsuite, make sure you have mocha installed

sudo npm install -g mocha

Run the tests

npm test