Wednesday, December 10, 2008

Neo4j.rb version 0.0.7: Rails support

Andreas Ronge just released version 0.0.7 of Neo4j.rb. See the project page for more information. Highlights from the changelog: added value object stuff to support Rails, made the neo4j engine start and stop automagically.

Neo4j.rb can now be used as a complement or replacement for ActiveRecord in Ruby on Rails. All what is needed is to add the neo4j gem in the rails config/environment.rb file.

Here is an example how to use a Neo4j.rb model in a rails controller:

   def new
# creates a empty value object from the node class:
@movie = Movie.value_object.new
end

def create
@movie = Movie.new
# update the new movie node
# by using the request parameters
@movie.update(params[:id])
end

Monday, December 8, 2008

Neo4j wrapper for Clojure

Julian Morrison has started to develop a wrapper around Neo4j for Clojure, a Lisp dialect running on the JVM. Here's how the code using the wrapper can look:

(use 'neo4j)

(with-neo "test"
(tx
(let [c (new-node) b (new-node)]
(relate (top-node) :customers c)
(relate c :customer b)
(.setProperty b "name" "Bob")
(success))))

The neo4j-clojure wrapper library was announced in this thread.

Simplified Groovy + Neo4j setup

Stig Lau wrote on using Groovy, Neo4j and Maven together.

The result is a Groovy demo on top of Neo4j, distributed as a Maven archetype. Setting it up on your machine is a single Maven command. Stig concludes:

Groovy just might have a nice syntax for writing the data-entries. However, I didn’t get it up and running as proposed, and therefore I am quite happy with getting a demo up and running on Groovy, and am passing the task of making the proposition work to Guillaume and the Neo4J team.

Thursday, December 4, 2008

How Groovy is Neo4j?

After hearing about Neo4j at RubyManor Robert Rees tried using it from Groovy and experienced some problems getting started. This was discussed on the Neo4j mailinglist as well. Topics mentioned are the packaging of Neo4j in multiple jar files, using transactions, the Neo4j API and the need for explicit shutdown.

Reading Emil's QCon slides Guillame Laforge, project lead of the Groovy language, got interested in how to bring in some Groovyisms to Neo4j. This topic got discussed on the mailing list, with input from the people working on bindings for Python and Ruby. One more topic that surfaced was to use Neo4j as a Django backend.

Wednesday, December 3, 2008

Neo4j.rb version 0.0.6 released

Today Andreas Ronge released version 0.0.6 of Neo4j.rb. See the project page for more information. Highlights from the changelog: new sort_by method, lazy loading of search results, support for Lucene query language.

Monday, December 1, 2008

QCon and RubyManor roundup

Recent presentations about Neo4j have created buzz in the community. Here are a few links that we thought were worth highlighting:

The slides from Emil's presentation at QCon SF 2008 are online on SlideShare.

Age Mooy of Xebia writes about his QCon impressions and says:

Alternative storage solutions like CouchDb, AtomServer, and Neo4J are very hot.

There was also a presentation of neo4j.rb over at RubyManor by Jonathan Conway. The slides are online.

Notes from the RubyManor presentation were published by Graham Ashton in a great blog post:

It sounds pretty interesting – well worth a look if you’re interested in database technology.