All new documentation will be done via our readthedocs site, though some old documentation has yet to be moved from our wiki
Neo4j.rb is an Active Model compliant Ruby/JRuby wrapper for the Neo4j graph database. It uses the neo4j-ruby-driver and active_attr gems.
Neo4j is a transactional, open-source graph database. A graph database manages data in a connected data structure, capable of representing any kind of data in a very accessible way. Information is stored in nodes and relationships connecting them, both of which can have arbitrary properties. To learn more visit What is a Graph Database?
With this gem you not only do you get a convenient higher level wrapper around Neo4j, but you have access to a powerful high-level query building interface which lets you take advantage of the power of Neo4j like this:
# Break down the top countries where friends' favorite beers come from
person.friends.favorite_beers.country_of_origin(:country).
order('count(country) DESC').
pluck(:country, count: 'count(country)')
It can be installed in your Gemfile
with a simple gem 'neo4j'
For a general overview see our website: http://neo4jrb.io/
Winner of a 2014 Graphie for "Best Community Contribution" at Neo4j's Graph Connect conference!
Neo4j.rb v4.1.0 was released in January of 2015. Its changes are outlined here and in the announcement message. It will take a little time before all documentation is updated to reflect the new release but unless otherwise noted, all 3.X documentation is totally valid for v4.
Neo4j Version | v2.x | v3.x | >= v4.x | >= 7.0.3 | activegraph 10 | activegraph 11 (jRuby only) |
---|---|---|---|---|---|---|
1.9.x | Yes | No | No | No | No | No |
2.0.x | No | Yes | No | No | No | No |
2.1.x | No | Yes | Yes * | Yes | No | No |
2.2.x | No | No | Yes | Yes | No | No |
2.3.x | No | No | Yes | Yes | No | No |
3.0, 3.1, 3.3 | No | No | No | Yes | No | No |
3.4 | No | No | No | Yes | Yes | No |
3.5 | No | No | No | Yes | Yes | Yes |
4.0 | No | No | No | No | Yes | Yes |
4.1 | No | No | No | No | No | Yes |
4.2 | No | No | No | No | No | Yes |
4.3 | No | No | No | No | No | Yes |
*
Neo4j.rb >= 4.x doesn't support Neo4j versions before 2.1.5. To use 2.1.x you should upgrade to a version >= 2.1.5
Neo4j Feature | v2.x | v3.x | >= v4.x | >= 8.x | >= activegraph 10.0 |
---|---|---|---|---|---|
Bolt Protocol | No | No | No | Yes | Yes |
Auth | No | No | Yes | Yes | Yes |
Remote Cypher | Yes | Yes | Yes | Yes | No |
Transactions | Yes | Yes | Yes | Yes | Yes |
High Availability | No | Yes | Yes | Yes | Yes |
Causal Cluster | No | No | No | No | Yes |
Embedded JVM support | Yes | Yes | Yes | Yes | via bolt only |
- Website (for an introduction)
- readthedocs
- Note: Our GitHub Wiki pages have outdated information. We are in the process of moving all documentation to readthedocs
Always welcome! Please review the guidelines for contributing to this repository.
- Neo4j.rb - MIT, see the LICENSE.
- Neo4j - Dual free software/commercial license, see Licensing Guide.
Notice: There are different licenses for the neo4j-community
, neo4j-advanced
, and neo4j-enterprise
jar gems. Only the neo4j-community
gem is required by default.