sample project featuring Neo4j in a ratpack application
JavaScript Groovy Shell CSS
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Build Status

This is a PoC (Proof of Concept) like small project to integrate Neo4j with Ratpack. acts as a template for this project.

The primary goal is allow remote access to Neo4j via Cypher.


The list below is a list of features, planned stuff is in parenthesis.

  • execute Cypher via HTTP POST and GET
  • support parameterized Cypher
  • (transactional Cypher Endpoint)
  • use message pack optionally as serialization format
  • provide multiple output formats e.g. JSON, XML, CSV
  • provide a interface to cancel currently running cypher queries



Cypher endpoint

The regular, non-transactional Cypher endpoint can be accessed using the path /cypher. Access is either possible via HTTP GET OR POST.

Cypher via HTTP GET

When sending Cypher queries using GET, the URL parameter query needs to contain the Cypher query in url encoded way. All other URL parameters are used as Cypher parameters.



Result is rendered in JSON as outlined on Neo4j REST API.

Cypher via HTTP POST

Sending Cypher queries using HTTP POST works just like in the standard Neo4j REST API

Getting Started

To run this app, you need Java 7 (to be fixed)

Check this project out, cd into the directory and run:

./gradlew run

This will start the neo4j-ratpack app. In your browser go to http://localhost:5050.

More on Ratpack

The published Ratpack Manual is currently minimal, but contributions are welcome.

More information, including issue tracker and support forum, is available on the Ratpack Website.

You can also check out the source @ or open this project in IDEA and dig through the source there.