A uniform interface for domain data (deprecated)
Latest commit 35624a2 Aug 24, 2015 @michael michael Update README.md



No longer maintained. Use http://github.com/substance/substance instead.

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

With Substance.Data you can:

  • 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 https://github.com/substance/data
$ cd data 
$ npm install

For running the testsuite, make sure you have mocha installed

sudo npm install -g mocha

Run the tests

npm test