gestura-protocol ยท canonical source
Gestura's device stack is Rust end to end. The Shared Semantic Protocol โ envelopes, gestures, haptics, config, and the raw sensor stream โ is defined once in Rust and mirrored by the ring firmware and the simulator. The TypeScript SDK consumes it compiled to WebAssembly; the planned Python SDK binds it natively via PyO3.
A standalone crates.io release is on the roadmap. Today, build against the workspace crates in the public repository (git dependency), and see crates/gestura-core-ring/PROTOCOL.md for the contract.
// The contract every SDK shares โ see PROTOCOL.md
ProtocolEnvelope {
protocol_version,
message_kind,
message_id,
sequence, // >=1; acknowledged via the ack event
timestamp_ms, // device uptime โ the ring has no wall clock
payload,
}No runtime overhead for high-level APIs
Compile-time guarantees prevent common bugs
Works with tokio, async-std, and smol
Windows, macOS, Linux, and embedded systems
Run on embedded devices without an OS
The canonical contract for gestures, haptics, config, and the sensor stream โ documented in PROTOCOL.md in the public repository.
View full API reference โ