This library implements the core of Relaynet and is meant to be used by anyone using the network from a Node.js application.
Please note that this documentation is mostly incomplete because the interface exposed by this library is changing rapidly as of this writing. Also note that the examples in this documentation won’t work until a gateway (e.g., the desktop one) has been implemented. We expect the library to reach a stable status and its documentation to be completed by the end of Q3 2020.
@relaycorp/relaynet-core requires Node.js v10 or newer, and the latest stable release can be installed as follows:
npm install --save @relaycorp/relaynet-core
Development releases use the
dev tag (
This library can be used for different purposes, so please refer to the documentation for your specific use case:
Most people will be interested in adding Relaynet support to their app, whether the app is pre-existing or is being built from scratch.
Relaycorp provides implementations for gateways, couriers and bindings, so if you’re contributing to those implementations or for whatever reason you’d like to build your own, please refer to the follow documents:
TypeScript type declarations are included with this library. Read API documentation.
This library supports the following Relaynet specs:
- RS-000 (Relaynet Core).
- RS-001 (RAMF v1).
- RS-002 (Relaynet PKI).
- RS-003 (Relaynet Channel Session Protocol).
- RS-018 (Relaynet Cryptographic Algorithms, Version 1). In addition to the required algorithms, the following are also supported:
- Hashing functions: SHA-384 and SHA-512.
- Ciphers: AES-192 and AES-256.
- ECDH curves: P-384 and P-521.