Creating a client for our chosen language is straightforward! This page is a guide for the components and protocols that need to be implemented.
A TypeDB client fundamentally is a lightweight frontend to the TypeDB server. Almost all operations are actually handled on the server, and executed via gRPC. So, to get started, we’ll need to confirm that gRPC and the underlying protobuf messages support our language of choice. Many languages also have non-official support for these protocols. Finally, we need to double check for compatible language versions.
Depend on TypeDB gRPC and Protobuf Definitions
For development purposes, it may be sufficient to manually compile and copy-paste TypeDB’s protobuf definitions.
A more reliable method is to stay in sync with protocol changes via a package manager. TypeDB’s build system is Bazel, and offers one approach. If we’d would like to use a different package manager, the TypeDB team may also be able to help by setting up a distribution channel for our chosen language’s compiled protobuf files. In this case, please get in touch!
This guide is a work in progress and will be updated with further details soon.