Developer Guides Getting Started Getting Started What is a Graph Database? Intro to Graph DBs Video Series Concepts: RDBMS to Graph Concepts: NoSQL to Graph Getting Started Resources Neo4j Graph Platform Graph Platform Overview Neo4j Desktop Intro Neo4j Browser Intro… Read more →

Developer Guides

Want to Speak? Get $ back.

Neo4j from c

If you are a C or C++ developer, this guide provides an overview of options for connecting from C and C++ to Neo4j.
You should be familiar with graph database concepts and the property graph model. You should have installed Neo4j and made yourself familiar with our Cypher Query language.

Neo4j for C Developers

Despite several attempts, Neo4j’s HTTP was not well supported in the C community. This changed with the advent of the binary protocol in Neo4j 3.0. Chris Leishman wrote a very comprehensive and full featured c-client library for the binary protocol.

Neo4j Community Drivers

The drivers below have been thankfully contributed by the Neo4j community. Many of these are fully featured and well maintained. But we don’t take any responsibility for their fitness for use with the most recent versions of Neo4j.


Libneo4j-client is a full featured c-library for interacting with Neo4j’s binary protocol. It supports all wire commands, as well as the security features like auth and TLS.

A very performant shell client is provided together with the library.

This library is not only meant to be used from C/C++ programs directly, but also as convenient, low-level integration library for other languages like PHP, Ruby and Python.


Chris Leishman