Specifications
Specifications of the Protocols and Data formats of NextGraph is still a Work in Progress.
All our protocols and formats use the binary codec called BARE. It has implementations in almost all languages.
As a developer, you will not have to directly manipulate BARE messages nor use the protocols directly. Instead all the APIs are made available to you as libraries that you can call from your code. We have bindings in JS and Rust for now. More languages could be added in the future.
You will find in the following sections, the specifications of
-
the Core Protocol which is used by Core Brokers to maintain the Pub/Sub
-
the Client Protocol which is used by clients (the Verifiers) to connect to their Broker.
-
the App Protocol which is used by the App (our official Apps, and all the SDKs) in order to exchange plaintext updates with the Verifier.
-
the Ext Protocol which is used by external users for read purpose only.
-
the Admin Protocol which is used by an admin of a Broker in order to add and remove users, and manage the Broker in general.
-
the Repo format which details the binary format of the commits, and blocks.
-
the Wallet format which details the format of the wallet as it is saved locally.
-
the DID method as registered to the W3C.
Reference
We also provide a reference documentation for the SDKs and binary softwares.
-
the Web JS SDK documentation of our Framework, for App developers in React or Svelte
-
the NodeJS SDK documentation of our Framework, for service developers using Node/Deno
-
the Rust SDK documentation of our Framework, for service developers
-
the Broker (ngd) documentation for Broker admins.
-
the CLI (ngcli) documentation for users who want to access their data from the command-line