🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Book a DemoInstallSign in
Socket

data

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

data

A Javascript data representation library.

0.6.1
npm
Version published
Maintainers
1
Created
Source

Data.js

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

For documentation, usage, and examples, see the offical documentation: http://substance.io/michael/data-js

With Data.js 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.

Features

  • Data.Graph (A data abstraction for all kinds of linked data)
  • Data.Collection (A simplified interface for tabular data)

Getting Started

Define a schema

var schema = {
  "/type/person": {
    "type": "/type/type",
    "name": "Person",
    "properties": {
      "name": {"name": "Name", "type": "string", "required": true},
      "origin": {"name": "Origin", "type": "/type/location" }
    }
  },
  "/type/location": {
    "type": "/type/type",
    "name": "Location",
    "properties": {
      "name": { "name": "Name", "unique": true, "type": "string", "required": true },
      "citizens": {"name": "Citizens", "unique": false, "type": "/type/person"}
    }
  }
};

Create a new Data.Graph.

var graph = new Data.Graph(schema);

Add some objects.

graph.set({
  _id: "/person/bart",
  type: "/type/person",
  name: "Bart Simpson"
});

graph.set({
  _id: "/location/springfield",
  name: "Springfield",
  type: "/type/location",
  citizens: ["/person/bart"]
});

Set properties (including relationships to other objects)

graph.get('/person/bart')
     .set({origin: '/location/springfield'});

Access your data.

var citizens = graph.get('/location/springfield').get('citizens');

_.each(citizens, function(person) {
  console.log(person.get('name'));
});

In The Wild

  • Substance - A web-based document authoring and publication platform that relies on Data.js for object persistence.
  • Déjàvis - A tool for analyzing and visualizing data. It uses Data.js for filtering and aggregating data
  • Dance.js Dance.js - A data-driven visualization library.

Keywords

util

FAQs

Package last updated on 19 Apr 2012

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts