libzt VS libdatachannel

Compare libzt vs libdatachannel and see what are their differences.


Encrypted P2P sockets over ZeroTier (by zerotier)
Our great sponsors
  • Sonar - Write Clean C++ Code. Always.
  • ONLYOFFICE ONLYOFFICE Docs — document collaboration in your environment
  • InfluxDB - Access the most powerful time series database as a service
libzt libdatachannel
5 18
56 1,160
- -
3.8 7.2
7 days ago 2 days ago
C++ C++
GNU General Public License v3.0 or later Mozilla Public License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.


Posts with mentions or reviews of libzt. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-12-05.
  • What are the most important metrics for measuring cloud and endpoint security?
    5 projects | | 5 Dec 2021
    BlindSPOT: Specific graphic from BlindSPOT: How to Measure Anything in Cybersecurity Risk: Monte Carlo simulation approach: D3FEND: ATT&CK mappings: ATT&CK evals: CALDERA: Offensive Countermeasures: SPIFFE: SPIRE: Zerotier: Zerotier libzt:


Posts with mentions or reviews of libdatachannel. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-05-27.
  • Security Framework
    2 projects | | 27 May 2023
    Alternatively you can use your server as a signaling server for WebRTC (Insertable Streams ("Breakout Box"), or data channels, then users (peers) can exchange data themselves and you don't need to store anything, see True End-to-End Encryption with WebRTC Insertable Streams, A complete example for a WebRTC datachannel with manual signaling.
  • Datachannel video streaming?
    2 projects | | 2 May 2023
    there is also a c++ library that can be used to open a data channel connection, I think a number of SFU “servers?” use this library (I wish I had)
  • Is there a master here who can implement WebRTC video capture in C++?
    2 projects | | 13 Mar 2023
    For networking and terminating WebRTC connections from cpp libdatachannel is you easiest bet. For transcoding you can pick whatever library you like, if any. The other way would be to use the chrome WebRTC stack and modify it for server use. It can and has been done but is very involved.
  • Who uses node executable without using npm?
    7 projects | | 21 Aug 2022
    Node.js node JavaScript runtime itself provides a means to interface with native applications. Plenty of people write their own WebSocket or WebRTC data channel libraries
  • Is it just me, or is it much easier to make complicated applications in C++ than web?
    3 projects | | 14 Aug 2022
    Fourtunately some technologies and API's are extensible enough to do whatever you want in spite of and to overcome limitations; e.g., WebRTC (particularly data channels, Native Messaging, WebTransport, fetch(), Trasnferable Streams, Media Capture Transform, File API, File System Access API, Web extensions.
  • How are rust devs doing?
    10 projects | | 17 Jul 2022
    To be fair, C++ has libdatachannel which I like using too.
  • Transport agnostic Websocket library
    6 projects | | 14 Jul 2022 ?
  • No why can't we have raw UDP in JavaScript?
    2 projects | | 5 Jul 2022
    Or use something specific like libdatachannel

    If you’re using WebRTC data channels in a client server config then infra is no more complex than a regular setup because the server will almost certainly have an external facing IP address.

    People should really try using WebRTC as well because you can get the full pipeline setup for a toy demo in a couple of slow days. I did whilst also writing my own signalling server in Go without having used Go before!

    It’s certainly not any more complex than rolling all the stuff the article is talking about on top of raw UDP.

  • Show HN: MockRTC – a mock peer and MitM proxy library for WebRTC
    2 projects | | 5 May 2022
    This does use a real WebRTC stack (specifically libdatachannel - Under the hood this is making real WebRTC connections.

    But I guess you mean why it doesn't mock using real peers in the browser where the tests are happening, using the browser's existing stack there?

    There's a few reasons I've avoided that:

    * Primarily: I want to do things that the browser APIs won't let you do. E.g. sending invalid data, or intentionally causing various types of errors. The browser APIs are designed to stop you doing the wrong thing, by keeping the raw data at arm's length. Very sensible for normal WebRTC usage, but bad for testing edge cases and breaking things.

  • FFmpeg - correct configuration for building webRTC in native C++?
    3 projects | | 3 May 2022
    Building WebRTC tends to be hell. If your use case is simple enough, it might be interesting to switch to an alternative C++ library like libdatachannel (I'm the author).

What are some alternatives?

When comparing libzt and libdatachannel you can also consider the following projects:

libjuice - JUICE is a UDP Interactive Connectivity Establishment library

Pion WebRTC - Pure Go implementation of the WebRTC API

sora-unity-sdk - WebRTC SFU Sora Unity SDK

janus-gateway - Janus WebRTC Server

aiortc - WebRTC and ORTC implementation for Python using asyncio

µWebSockets - Simple, secure & standards compliant web server for the most demanding of applications

tiny-webrtc-gw - tiny/fast webRTC video conferencing gateway

openmiko - Open source firmware for Ingenic T20 based devices such as WyzeCam V2, Xiaomi Xiaofang 1S, iSmartAlarm's Spot+ and others.

SIPSorcery - A WebRTC, SIP and VoIP library for C# and .NET. Designed for real-time communications apps.

webrtc - A pure Rust implementation of WebRTC

libwebsockets - canonical networking library

pear - WebRTC Library for IoT/Embedded Device using C