Edit on Github

Introduction

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 Grakn client fundamentally is a lightweight frontend to the Grakn 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 Grakn gRPC and Protobuf Definitions

For development purposes, it may be sufficient to manually compile and copy-paste Grakn’s protobuf definitions.

A more reliable method is to stay in sync with protocol changes via a package manager. Grakn’s build system is Bazel, and offers one approach. If we’d would like to use a different package manager, the Grakn 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.