| Crates.io | selium-switchboard-protocol |
| lib.rs | selium-switchboard-protocol |
| version | 0.2.0 |
| created_at | 2026-01-13 00:04:54.640725+00 |
| updated_at | 2026-01-21 05:57:09.756758+00 |
| description | Selium module for abstracting channel management and messaging patterns |
| homepage | https://selium.com |
| repository | https://github.com/seliumlabs/selium-modules |
| max_upload_size | |
| id | 2039086 |
| size | 86,478 |
The switchboard service provides an orchestration layer on top of core I/O. It provides realtime rationalising of channel infrastructure as the environment changes (e.g. a new subscriber being created, or a service being shut down), as well as a more ergonomic messaging library.
This service has 4 crates:
selium-switchboard (client/) - client library that guests consumeselium-switchboard-core (core/) - core logicselium-switchboard-protocol (protocol/) - wire protocolselium-switchboard-server (server/) - WASM module run by the hostCompile the selium-switchboard-server component to WebAssembly and install in the Runtime's work directory:
cargo build --release --target wasm32-unknown-unknown -p selium-switchboard-server
cp target/wasm32-unknown-unknown/release/selium_switchboard_server.wasm /path/to/selium-runtime/work/modules/
The selium-switchboard-server component should be added to the Selium Runtime's initialisation args:
selium-runtime \
--work-dir /path/to/selium-runtime/work \
--module "path=selium_switchboard_server.wasm;capabilities=ChannelLifecycle,ChannelReader,ChannelWriter,SingletonRegistry"