Skip to main content

Application layer

The application defines the work, enrolls devices and decides what constitutes acceptance. It can use messages, documents and service calls together. A backend adapter maps locally completed work into the existing system of record.

Protocol layer

The Rust core manages protocol state, MLS, routing, reliability and replication. It queues frames for platform I/O. It does not turn an unsupported radio into a transport.

Platform layer

React Native supplies native bridges for mobile platforms. Python supplies desktop transport managers. Rust and constrained firmware integrations provide the relevant I/O and storage implementations. See platforms.

Identity and storage

A stable application/profile namespace selects local identity and persisted state. The derived device address identifies the peer on the network. User accounts are an application concern; the hosted OfflineID SDK is an optional separate integration.

Upstream integration

A local workflow can coexist with direct cloud communication. A collector or gateway is added where the topology requires it. Retained events reach a backend through an explicit adapter and acceptance contract, described in backend delivery.