A reasonably functional Neo4j driver for the Julia programming language.
31 Stars
Updated Last
1 Year Ago
Started In
June 2014

This project is no longer actively maintained and probably doesn't work with recent versions of Neo4j. PRs to fix aspects of its functionality are still welcome.



A Julia client for the Neo4j graph database.

Really easy to use, have a look at test/runtests.jl for the available methods.

Basic Usage

c = Connection("localhost"; user="neo4j", password="neo4j")
tx = transaction(c)
tx("CREATE (n:Lang) SET = \$name", "name" => "Julia")
tx("MATCH (n:Lang) RETURN n LIMIT {limit}", "limit" => 10)
results = commit(tx)

You can also submit a transaction to the server without committing it. This will return a result set but will keep the transaction open both on the client and server:

results = tx("MATCH (n) RETURN n"; submit=true)

Rollbacks are also supported:


If the goal is to simply run a MATCH query and get the result in the form of a DataFrames.DataFrame object, the cypherQuery function can be used. The cypherQuery implementation performs the query in a single transaction which automatically opens and closes the transaction:

results = cypherQuery(c, "MATCH (n) RETURN AS Property")