Crates.io | dachannel |
lib.rs | dachannel |
version | 0.2.1 |
source | src |
created_at | 2024-02-28 19:18:22.513816 |
updated_at | 2024-02-29 04:08:49.477672 |
description | Less painful WebRTC DataChannels |
homepage | |
repository | https://github.com/coevolutions/dachannel |
max_upload_size | |
id | 1156867 |
size | 16,041 |
dachannel is a WebRTC DataChannel library for both web (using browser WebRTC) and native (using libdatachannel). It is comprised of:
libdatachannel (native) / web-datachannel (web)
Platform-level libraries for DataChannel support.
datachannel-facade
A facade over platform libraries to expose an identical API for DataChannels on all platforms.
dachannel
A high-level, idiomatic DataChannel library.
graph BT;
web-datachannel --web--> datachannel-facade
libdatachannel-sys --> libdatachannel;
libdatachannel --native--> datachannel-facade;
datachannel-facade --> dachannel;
dachannel --web/native--> dachannel-client;
dachannel --native--> dachannel-server;
Each level of the stack is usable independently. If you want an unopinionated platform-independent wrapper, you can use datachannel-facade
. If you just need a Rust wrapper of libdatachannel, you can use libdatachannel
.
dachannel also supports configuring WebRTC in a client-server topology.