clasp-discovery

Crates.ioclasp-discovery
lib.rsclasp-discovery
version3.1.0
created_at2026-01-16 04:34:35.425273+00
updated_at2026-01-25 07:23:06.297488+00
descriptionDevice discovery for CLASP (mDNS, UDP broadcast)
homepagehttps://clasp.to
repositoryhttps://github.com/lumencanvas/clasp
max_upload_size
id2047900
size136,161
Moheeb Zara (virgilvox)

documentation

README

clasp-discovery

Network discovery for CLASP (Creative Low-Latency Application Streaming Protocol) devices and servers.

Features

  • mDNS/DNS-SD - Zero-configuration discovery on local networks
  • UDP Broadcast - Fallback discovery when mDNS is unavailable
  • Service Announcement - Advertise CLASP services to the network

Usage

use clasp_discovery::Discovery;

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    let discovery = Discovery::new().await?;

    // Start discovering devices
    discovery.start().await?;

    // Wait for devices
    tokio::time::sleep(std::time::Duration::from_secs(5)).await;

    // Get discovered devices
    for device in discovery.devices() {
        println!("Found: {} at {:?}", device.name, device.endpoints);
    }

    Ok(())
}

Service Announcement

use clasp_discovery::Discovery;

let discovery = Discovery::new().await?;
discovery.announce("My CLASP Server", 7330).await?;

mDNS Service Type

CLASP uses the service type _clasp._tcp.local for mDNS discovery.

Documentation

Visit clasp.to for full documentation.

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.


Maintained by LumenCanvas | 2026

Commit count: 79

cargo fmt