couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Aufreiter>
Subject Data.js 0.4.0 released — A declarative interface to CouchDB
Date Thu, 14 Jul 2011 23:36:57 GMT
I just released version 0.4.0 of Data.js, a data manipulation and graph persistence framework
for Node.js and the browser.

It can also be considered a declarative interface to CouchDB, where users can use the same
API from Node.js or from the browser.
Data.js is built around a graph data model, where one node in the graph corresponds to one
document in Couch.
It offers support for object relationships and solves the "Data Join Problem" using multiple
gets for resolving associated objects.

It introduces a query language that can be used to solve most common tasks, leaving complex
queries and calculations to map/reduce.

Example query:

"type": "/type/"location",
"state": "CA",
"visitors": {} // placeholder, telling the query execution engine to return associated visitor

The result is a subgraph, containing the query matches, along with associated objects (visitors):

"/location/san_francisco": {"state": "CA", "visitors": ["/person/frank", "/person/mary"],
"type": "/type/location"},
"/person/frank": {..., "type": "/type/person"},
"/person/mary": {..., "type": "/type/person"},

Here's more:

And the source:

Would love to get some feedback. :)

-- Michael

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message