The transport, identity, and coordination layer for the disconnected edge
An offline mesh networking platform in three layers, all shipped, all running on 350,000+ devices across 80+ countries. One offline-first SDK surface: Rust core with a React Native binding for iOS and Android.
Three independent primitives. One application surface.
Diagram of three interoperable offline networking primitives converging on one application: DORS transport, OfflineID identity, and Service Discovery coordination. The primitives work independently and together rather than passing application data through a linear stack.
Your application Fleet coordination · agent runtimes · field apps · messaging Figure 1. DORS, OfflineID, and Service Discovery are individually usable primitives on one SDK surface. Data does not pass through them as a fixed three-stage pipeline.
DORS
DORS, the Dynamic Offline Relay Switch, runs BLE, WiFi Direct, internet, Reticulum, and Nostr concurrently and scores each transport on live signal, congestion, energy, and reliability to pick the best. Multi-hop relay with a reliability layer of acknowledgment, retry, deduplication, and TTL built in, plus chunked file transfer. Sessions are encrypted with MLS (RFC 9420) by default. How peer-to-peer mesh networking works →
Demonstration of transport failover on the offline mesh networking stack: a field unit whose internet link is down stays connected to a fleet dashboard over an active Bluetooth LE mesh link, with WiFi Direct on standby.
OfflineID
Ed25519-based self-sovereign identity, verifiable device-to-device with zero connectivity, anchored on-chain for rotation and revocation. Trust-on-first-use pairing. Keys never leave the device. 300,000+ issued. How offline identity verification works →
Demonstration of offline identity verification: a phone holding an Ed25519 OfflineID authenticates against a gate access panel device-to-device with zero connectivity, and access is granted offline.
Service Discovery
The offline internet. Devices advertise capabilities, others discover them through multi-hop routing and invoke them with a request/response pattern. No server, no DNS, no infrastructure. A device five hops away is invocable like an API endpoint. How serverless service discovery works →
This is the only discovery-and-invocation primitive in production that survives losing the internet.
Advertise. A device announces a capability, a sensor feed, a compute service, a data store, to its neighbors.
Discover. Peers up to 8 hops away learn about the capability through multi-hop routing.
Authenticate. Caller and provider verify each other with OfflineID, no lookup required.
Invoke. Request and response travel over the mesh with acknowledgment and retry, like calling an API endpoint.
Demonstration of serverless service discovery on the offline mesh: a phone discovers a thermal camera service advertised three hops away and invokes it request/response, streaming imagery with no server and no DNS.
Telemetry, opt-in by design
The protocol emits nothing until your app installs a sink. Then a single stream carries protocol events, MLS lifecycle, transport-state transitions, routing decisions, and device-capability changes. Read about offline telemetry →
One SDK surface
An offline-first SDK for React Native: a TypeScript API over a Rust core, same surface on iOS and Android. Start building →
OfflinePay, offline-capable payments on the mesh, is in development.
Compose the platform around what your product needs
Start with one primitive or combine all three. Each capability below is part of the shipped platform surface and links to its implementation context.
Multi-transport routing
Run BLE, WiFi Direct, internet, Reticulum, and Nostr with automatic failover.
→ TransportMulti-hop delivery
Relay ordered payloads across peers with acknowledgment, retry, and deduplication.
→ IdentityOffline authentication
Verify Ed25519 identities locally when no authority or registry is reachable.
→ IdentityRotation and revocation
Anchor identity lifecycle on-chain and propagate updates when a node reconnects.
→ CoordinationCapability advertising
Publish what a device can do directly onto the mesh without DNS.
→ CoordinationDiscover and invoke
Find a provider multi-hop and call it request/response like a local API.
→ ObservabilityOpt-in telemetry
Install a sink and receive protocol events in-process, push or pull, with identifiers scrubbed by default.
→ SDKOne developer surface
Use the same TypeScript API over a Rust core on iOS and Android.
→
