sioc
A type-safe, async Socket.IO protocol v5 client for Rust.
What is the Socket.IO protocol?
The Socket.IO protocol v5 is built on top of Engine.IO protocol v4.
It adds namespaces for multiple channels over a single connection, events as named messages with structured data, acknowledgements for request/response patterns, and support for binary attachments.
Design
- Async networking built on
tokio,reqwest, andtokio-tungstenite. - Actor-model client, communicating through channels, no internal locks.
- Derive macros for events and acks.
- Event handling lives in match arms, no callbacks with boxed futures.
- State lives in the enclosing scope, no Arc or Mutex.
- Zero-copy packet parsing via
bytestringandbytes.
License
MIT OR Apache-2.0.