plexus
A Rust implementation of the Reticulum Network Stack, a cryptography-based mesh networking protocol for LoRa, packet radio, WiFi, and similar media. Source distribution.
About
Reticulum is an open, cryptography-based networking stack created by Mark Qvist. It provides self-configuring multi-hop routing, end-to-end encryption, and forward secrecy over high-latency and low-bandwidth links. It runs in userland and is transport-agnostic: LoRa, packet radio, WiFi, serial, TCP/IP tunnels, and so on. The reference implementation is written in Python.
plexus is an independent Rust implementation of the same protocol, intended for resource-constrained devices and deployments where a single static binary is preferable to a Python runtime. It is not affiliated with the upstream Reticulum project.
The workspace is organized around a single architectural seam:
- gateway — the wire-compatible core. Byte-exact with the Reticulum network (validated against the Python reference), so plexus nodes interoperate with existing RNS deployments.
- extension — new work layered above the gateway (protocol extensions, transport experiments) that never alters the compatible wire format unless explicitly negotiated. Breaking changes permitted between minor versions until 1.0.
It builds two binaries, both by default.
Downloads
Latest source tarballs. Verify with the listed SHA-256 digest before extracting.
Current release
| File | Version | Size | SHA-256 | Signature |
|---|---|---|---|---|
| plexus-0.1.0.tar.gz | 0.1.0 | 71.3 KiB | 14e639dd565792e9387bcdbd428df3e3d1a32c5947068b3631d3225c202a881c |
— |
| plexus-0.1.0.tar.xz | 0.1.0 | 58.0 KiB | 8aa69524e07dd14fa120e101eb38510e1c3e0052798879393e25cff2cbb927d4 |
— |
| plexus-0.1.0.zip | 0.1.0 | 101.9 KiB | 7b787b4da1d20335bfbc78938391c38960e366f99b2d89fa8608e7159fd78cff |
— |
Previous releases
None yet.
Git
git clone https://git.itys.net/mjh/plexus.git
Binaries
The workspace builds two binaries by default.
| Binary | Purpose | Crate |
|---|---|---|
plexus-rnsd |
The daemon / transport node: owns the gateway, serves interfaces, announces destinations. | crates/plexus-rnsd |
plexus |
Command-line utilities (status, path, probe, copy, identity). | crates/plexus-cli |
The protocol stack itself lives in library crates —
plexus-core, -crypto, -codec,
-gateway, -iface, -ext —
under crates/.
Building from source
Requires a recent stable Rust toolchain. No other build dependencies.
tar xzf plexus-0.1.0.tar.gz
cd plexus-0.1.0
cargo build --release
Binaries are written to target/release/:
plexus-rnsd (the daemon) and plexus (the utilities).
Build a single binary
cargo build --release -p plexus-rnsd # the daemon / transport node
cargo build --release -p plexus-cli # the `plexus` command-line utilities
License
See the LICENSE file in the source distribution.
Contact
Issues and patches: see the README in the source tree.