rift-mesh
Part of the riftd project — serverless P2P voice + text chat over UDP.
What's in this crate?
rift-mesh is the heart of riftd's networking:
- Mesh Topology — Every peer connects to every peer
- Noise Sessions — Encrypted channels using Noise_XX
- E2EE — End-to-end encryption for all messages
- NAT Traversal — Automatic hole punching with fallback
- Peer Relay — Route through peers when direct fails
- Session Management — Handle joins, leaves, reconnects
Usage
use ;
let config = default;
let node = new.await?;
// Join a channel
node.join.await?;
// Send a message
node.send_chat.await?;
// Handle incoming messages
while let Some = node.next_event.await
Features
predictive-rendezvous(default) — Enable SRT-based NAT traversal
Related Crates
| Crate | Description |
|---|---|
| rift-core | Identity and crypto primitives |
| rift-protocol | Message types |
| rift-nat | STUN/TURN support |
| rift-rndzv | Predictive Rendezvous |
| rift-sdk | High-level API |
Citation
If you use riftd in academic work, please cite:
de Beer, R. (2026). Predictive Rendezvous: Time–Intent–Deterministic Peer Coordination Without Infrastructure. Zenodo. https://doi.org/10.5281/zenodo.18528430
License
Licensed under either of Apache License, Version 2.0 or MIT license at your option.