Developers
Development Status

Development status

⚠️

There will be a breaking SDK upgrade in the coming months. This upgrade will make the SDK a lot easier to build with.

This upgrade will affect the interface of the SDK dramatically, and will be coupled with a protocol change - stay tuned for information on early access to the new protocol testnet.

It will also be coupled with the documentation of the SDK on crates.io (opens in a new tab).

The SDK is still somewhat a work in progress: interfaces are fairly stable but still may change in subsequent releases.

In the future the SDK will be made up of several modules, each of which will allow developers to interact with different parts of Nym infrastructure.

ModuleFunctionalityReleased
MixnetCreate / load clients & keypairs, subscribe to Mixnet events, send & receive messages✔️
TcpProxyUtilise the TcpProxyClient and TcpProxyServer abstractions for streaming✔️
ClientPoolCreate a pool of quickly useable Mixnet clients✔️
EcashCreate & verify Ecash credentials
ValidatorSign & broadcast Nyx blockchain transactions, query the blockchain

The Mixnet module currently exposes the logic of two clients: the websocket client, and the socks client.

The TcpProxy module exposes functionality to set up client/server instances that expose a localhost TcpSocket to read/write to.

The ClientPool is a configurable pool of ephemeral clients which can be created as a background process and quickly grabbed.