titan-node

Wrapper project around gremlin-node to provide out of the box support for the Titan graph database.

titan-node

Wrapper around gremlin-node to provide out of the box support for Titan graph database.

gremlin-node does not include the jar files for Titan, nor does it make any assumptions based on using Titan as a backend. This project customizes gremlin-node to make it easier to get up and running:

  • includes the appropriate Java jar files for Titan 0.4.1 in the classpath
  • adds Titan-specific enums and data types to the gremlin object (e.g. Geo and Geoshape)
  • adds loglevel option to the gremlin constructor to control Titan verbosity. see logback's documentation for all available levels
  • passes the recommended runtime flags to the JVM instance instantiated by gremlin-node
$ npm install titan-node
var Titan = require('titan-node');
var gremlin = new Titan.Gremlin({ loglevel: 'OFF' });
 
var GraphOfTheGodsFactory = gremlin.java.import('com.thinkaurelius.titan.example.GraphOfTheGodsFactory');
 
var graph = GraphOfTheGodsFactory.createSync('testdirectory');
var g = gremlin.wrap(graph);
 
g.V('name', 'saturn').next(function (errsaturn) {
  g.start(saturn).in('father').in('father').next(function (errgrandchild) {
    var name = grandchild.getPropertySync('name');
    console.log(name);
  });
});