Neo4j Community Driver for C Developers

If you are a C or pass:[C++] developer, this guide provides an overview of options for connecting from C and pass:[C++] to Neo4j.
You should be familiar with graph database concepts and the property graph model. You should have created an Neo4j AuraDB cloud instance, or installed Neo4j locally


Neo4j Community Drivers

Members of the each programming language community have invested a lot of time and love to develop each one of the community drivers for Neo4j, so if you use any one of them, please provide feedback to the authors.

The community drivers have been graciously contributed by the Neo4j community. Many of them are fully featured and well-maintained, but some may not be. Neo4j does not take any responsibility for their usability.

Neo4j C Driver

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.


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