Description
This driver is compatible with RethinkDB 2.0. It is based on the official RethinkDB Python driver.
RethinkDB driver for C++ alternatives and similar libraries
Based on the "Database" category.
Alternatively, view RethinkDB driver for C++ alternatives based on common mentions on social networks and blogs.
-
LevelDB
LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values. -
LMDB
Read-only mirror of official repo on openldap.org. Issues and pull requests here are ignored. Use OpenLDAP ITS for issues. -
cpp_redis
DISCONTINUED. C++11 Lightweight Redis client: async, thread-safe, no dependency, pipelining, multi-platform. -
Bedrock
Rock solid distributed database specializing in active/active automatic failover and WAN replication -
libmdbx
DISCONTINUED. One of the fastest embeddable key-value ACID database without WAL. libmdbx surpasses the legendary LMDB in terms of reliability, features and performance. -
SimDB
A high performance, shared memory, lock free, cross platform, single file, no dependencies, C++11 key-value store -
BerylDB
DISCONTINUED. BerylDB is a fully modular data structure data manager that can be used to store data as key-value entries. The server allows channel subscription and is optimized to be used as a cache repository. Supported structures include lists, sets, multimaps, and keys.
CodeRabbit: AI Code Reviews for Developers

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of RethinkDB driver for C++ or a related project?
README
RethinkDB driver for C++
This driver is compatible with RethinkDB 2.0. It is based on the official RethinkDB Python driver.
Example
#include <memory>
#include <cstdio>
#include <rethinkdb.h>
namespace R = RethinkDB;
int main() {
std::unique_ptr<R::Connection> conn = R::connect("localhost", 28015);
R::Cursor cursor = R::table("users").filter(R::row["age"] > 14).run(*conn);
for (R::Datum& user : cursor) {
printf("%s\n", user.as_json().c_str());
}
}
Build
Requires a modern C++ compiler. to build and install, run:
make
make install
Will build include/rethinkdb.h
, librethinkdb++.a
and
librethinkdb++.so
into the build/
directory.
To include documentation from the Python driver in the header file, pass the following argument to make.
make INCLUDE_PYTHON_DOCS=yes
To build in debug mode:
make DEBUG=yes
To install to a specific location:
make install prefix=/usr/local DESTDIR=
Status
Still in early stages of development.
Tests
This driver is tested against the upstream ReQL tests from the RethinkDB repo, which are programmatically translated from Python to C++. As of 34dc13c, all tests pass:
$ make test
...
SUCCESS: 2053 tests passed