TypeDB Drivers
Welcome to the TypeDB driver documentation!
Introduction
TypeDB accepts client connections via gRPC based TypeDB driver RPC protocol.
To build an application capable of connecting to TypeDB, we can use one of the existing libraries implementing it, called TypeDB drivers, or we can implement it ourselves as a new driver.
A TypeDB driver is a library that implements TypeDB driver RPC protocol and provides a language-specific native API. TypeDB drivers are available for some of the most popular programming languages: Rust, Python, Java, Node.js, and C++.
Driver architecture
TypeDB drivers share a common architecture and capabilities. The key components have to do with providing an API, opening and managing connections, sessions, and transactions, as well as validating and sending queries, processing responses.
The following diagram illustrates the structure of a typical TypeDB driver.
Simply put, the main components of any TypeDB driver are the classes and methods to establish a connection to a TypeDB database, execute queries, and process responses.
The Java, Python, and C/C++/C# drivers are implemented as wrappers on top of the Rust driver via an FFI interface.
The Node.js driver is implemented independently.
Prior to version |