Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
An active model wrapper for the Neo4j Graph Database for Ruby.
Ruby
Failed to load latest commit information.
bin Rubocop: Style/SpaceInsideBlockBraces, adding back SpaceBeforeBlockPa…
config Revert "Revert premature merge of metadata branch"
docs Update docs to describe new restrictions on `type`, `origin`, and `re…
lib lower gemspec ruby version requirement for jruby
spec inserts a `with` into `count` when `limit` has been called
test use Integer instead of Fixnum
.gitignore Starting on using sphinx / rst for readthedocs docs
.overcommit.yml Adding overcommit
.pullreview.yml More alignment of PullReview with rubocop config
.rspec all specs passing, running full tx support spec each time
.rubocop.yml Remove offense count from .rubocop.yml
.rubocop_todo.yml A few other small changes
.travis.yml drop 1.9.3 support from travis
.yardopts YARD custom templates to generate reStructuredText files for API docu…
CHANGELOG.md Update CHANGELOG.md
CONTRIBUTING.md Add CONTRIBUTING.md so that there is a link on the new issue page to …
CONTRIBUTORS Update contributors list, use github history for constantly up to dat…
Gemfile modify gemfile and gemspec to use neo4j-core 5.0.0.rc.1
Guardfile Add guard rspec
LICENSE prepare for rubyforge release of gem. Added license file
README.md Info about how to install
Rakefile A couple of documentation fixes and configure a custom stylesheet
mkdocs.yml Trying to configure mkdocs to see if that fixes RTD
neo4j.gemspec lower gemspec ruby version requirement for jruby

README.md

Welcome to Neo4j.rb

Code Status

Build Status Coverage Status Code Climate PullReview stats

Issues

Next Release In Progress In Master

Post an issue

Get Support

StackOverflow Gitter Twitter Mailing list

Introduction

Neo4j.rb is an Active Model compliant Ruby/JRuby wrapper for the Neo4j graph database. It uses the neo4j-core 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! 2014 Graphie

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 support

Neo4j Version v2.x v3.x v4.x
1.9.x Yes No No
2.0.x No Yes No
2.1.x No Yes Yes
2.2.x No No Yes

Neo4j feature support

Neo4j Feature v2.x v3.x v4.x
Auth No No Yes
Remote Cypher Yes Yes Yes
Transactions Yes Yes Yes
High Availability No Yes Yes
Embedded JVM support Yes Yes Yes

Modern (3.x/4.X) Documentation

Legacy (2.x) Documentation

Developers

Original Author

Current Maintainers

Contributing

Always welcome! Please review the guidelines for contributing to this repository.

License

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.

Something went wrong with that request. Please try again.