rift-discovery
Part of the riftd project — serverless P2P voice + text chat over UDP.
What's in this crate?
rift-discovery combines local and wide-area peer discovery:
- mDNS Discovery — Find peers on the local network automatically
- DHT Discovery — Find peers anywhere on the internet
- Service Browsing — Discover rift channels and peers
- Peer Announcement — Advertise your presence
- Unified API — Single interface for all discovery methods
Usage
use Discovery;
let discovery = new.await?;
// Start announcing
discovery.announce.await?;
// Discover peers (combines mDNS + DHT)
let mut stream = discovery.discover;
while let Some = stream.next.await
How Discovery Works
- LAN — mDNS broadcasts find peers on the same network instantly
- Internet — DHT queries find peers anywhere (requires bootstrap)
- Invites — Direct connection via invite tokens (see rift-rndzv)
Related Crates
| Crate | Description |
|---|---|
| rift-dht | DHT implementation |
| rift-rndzv | Invite-based rendezvous |
| rift-mesh | Mesh networking layer |
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.