30 open-source projects similar to rtcrs/webrtc, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Webrtc alternative.
rust-libp2p is a modular peer-to-peer networking library written in Rust, implementing the libp2p specification. It provides a composable stack of transport, security, and discovery protocols that can be mixed and matched to build decentralized applications, with a central swarm manager coordinating all active connections, protocol negotiation, and peer lifecycle. The library distinguishes itself through a pluggable transport abstraction that supports TCP, QUIC, WebSocket, WebRTC, and WebTransport, enabling cross-platform operation across browsers, mobile devices, and servers. It secures ever
This library provides a complete implementation of the WebRTC protocol suite in Rust, enabling peer-to-peer audio, video, and data channels with an asynchronous, Rust-native stack. Its architecture separates protocol logic from I/O, giving developers control over threading and scheduling while the library manages the protocol state. The stack is built to be modular, supporting data channel multiplexing over a single SCTP association, an event-driven callback interface for responding to connection changes, and an interceptor pipeline for processing media packets without altering core protocol c
nng is a brokerless messaging library and a modern implementation of the nanomsg protocol. It provides an asynchronous network transport for communication between distributed processes, utilizing non-blocking input and output to distribute network traffic across multiple CPU cores. The library enables the implementation of scalable messaging patterns, such as request-reply and publish-subscribe, without the need for a central message broker. It includes built-in encryption protocols to provide secure message transport and protect data transmissions between network nodes. The project covers d
Glide is an image loading and caching library for Android that fetches and decodes images, GIFs, and video stills from local or remote sources. It functions as a media rendering framework and memory management tool designed to resize and downsample assets to fit specific view dimensions. The system prioritizes scrolling performance through a multi-level caching strategy that stores decoded media in memory and raw data on disk. It employs resource pooling to reuse bitmap memory and binds image loading tasks to component lifecycles to automatically release resources and prevent memory leaks. T
This project is a browser-based video conferencing platform that facilitates direct, peer-to-peer communication between participants. By utilizing browser-native media capture and direct network connections, it enables real-time audio, video, and screen sharing without relying on central media relay servers. The platform distinguishes itself through its focus on ephemeral, private communication. It generates unique, short-lived session identifiers for virtual rooms that exist only in memory, ensuring that no persistent user accounts or long-term storage are required. To maintain connection st
Mirotalksfu is a WebRTC video conferencing platform and AI-integrated meeting suite. It functions as a real-time communication system for hosting high-resolution audio and video meetings, serving as a self-hosted virtual classroom and a collaborative workspace. The platform distinguishes itself by integrating generative AI assistants, speech recognition, and digital avatars into live sessions. It also operates as an RTMP streaming gateway, allowing users to broadcast live meeting content to external audiences and platforms. The system provides a collaboration suite featuring a shared interac
Mirotalk is a self-hosted video conferencing platform and peer-to-peer communication server. It utilizes WebRTC for high-resolution video calls, screen sharing, and real-time audio streaming, operating as a decentralized system that routes media streams directly between participants to ensure privacy and low latency. The platform integrates conversational language models and speech recognition to provide real-time transcription and automated meeting tasks. It also functions as a white-label collaboration suite, allowing users to apply corporate visual identities across the interface and sourc
SimpleWebRTC is a communication framework and real-time media streaming library designed to establish peer-to-peer audio, video, and data streams between web clients. It provides a conference room manager to organize multiple participants into virtual rooms for group interaction. The framework includes a dedicated system for peer-to-peer file transfers and low-latency data messaging. It also features a network traversal configuration tool for managing the servers required to maintain connectivity across firewalls and restrictive network environments. The project covers broad capability areas
apprtc is a WebRTC video chat application and signaling server designed to establish peer-to-peer audio and video communication between browsers. It provides a coordination layer using a websocket-based signaling server to exchange session descriptions and network candidates. The project is delivered as a dockerized communication app, allowing for a containerized deployment of the calling service for local development or cloud hosting. It includes a network gateway that integrates STUN and TURN servers to facilitate media flow through firewalls and NATs. The implementation covers peer discov
This project is a WebRTC plugin for Flutter that provides a real-time communication framework for implementing peer-to-peer voice, video, and data streaming. It functions as a cross-platform media streamer and hardware media controller, allowing applications to manage device cameras and microphones across mobile, desktop, and web platforms. The framework includes a dedicated peer-to-peer data channel interface for exchanging arbitrary data packets with low latency. It ensures privacy and data integrity through end-to-end encryption for all audio, video, and data transmissions. Broad capabili
react-native-webrtc is a mobile framework wrapper and peer-to-peer communication library used to integrate real-time audio, video, and data communication into cross-platform mobile applications. It functions as a tool for capturing device screens and streaming live media content via the WebRTC protocol. The project provides an interface for bidirectional data channels, enabling the exchange of arbitrary data packets between peers without a central relay server. It supports real-time media streaming, including peer-to-peer audio and video transmission and screen capture capabilities. The libr
Cellnet is a Go networking framework designed for building distributed systems and peer-to-peer networks. It provides a multi-protocol transport layer that standardizes message exchange across TCP, UDP, and WebSockets, utilizing a binary message codec system to map message types to unique identifiers for network transmission. The framework is distinguished by its remote procedure call library, which enables the execution of functions on remote peers using synchronous or asynchronous request patterns. It further differentiates itself with an asynchronous event dispatcher that processes network
PeerJS Server is a WebRTC signaling server and connection broker that coordinates handshakes between clients to establish direct peer-to-peer connections. It functions as a coordination point for discovering peer identifiers and initiating real-time media and data streams between remote browser clients. The project can be deployed as a dedicated signaling server or integrated as Node.js middleware within an existing web application to share a single network port. It manages the lifecycle of peer connections through a centralized signaling process, assigning unique identifiers to clients and m
Noise is a peer-to-peer networking stack written in Go designed for building decentralized systems. It provides a framework for managing node lifecycles, establishing encrypted communication channels, and facilitating direct data exchange between distributed nodes without reliance on central authorities. The library distinguishes itself through a modular architecture that allows developers to stack custom communication layers, enabling the creation of specialized network protocols. It incorporates a decentralized key-value lookup system for peer discovery and routing, alongside cryptographic
simple-peer is a JavaScript library that provides a wrapper for WebRTC to simplify the establishment of peer-to-peer networking in the browser. It serves as a tool for creating direct device-to-device connections for the transmission of binary data and real-time media streaming. The library manages the exchange of strings and binary buffers through a data channel implementation and provides tools for sharing real-time audio and video tracks between peers. It covers the full lifecycle of peer connectivity, including signaling coordination, session description negotiation, and the gathering of
This project is a reference implementation and framework for building real-time communication systems. It provides an Android demo application for WebRTC video, audio, and data transmission, alongside a communication SDK for integrating instant messaging, VoIP, and multi-party video conferencing into mobile and web applications. The framework includes a P2P media streaming client for direct high-definition transmission between devices and an interactive whiteboard application that synchronizes drawing and screen sharing across connected users. It also provides a foundation for IM and VoIP sys
Tomahawk is a multi-source music player that aggregates local audio files and online streaming services into a single interface. It functions as a social music discovery platform, enabling users to browse shared libraries, exchange tracks, and participate in collaborative listening sessions. The application distinguishes itself through a decentralized peer-to-peer architecture that facilitates direct media discovery and data exchange between users without relying on a central server. It utilizes a modular resolver framework that allows for the integration of custom plugins, enabling the conne
flutter-webrtc is a real-time communication SDK and plugin for the Flutter framework. It provides a set of tools for establishing peer-to-peer media connections and low-latency data exchange across mobile, desktop, and web environments. The project enables the creation of applications with live audio and video calling, real-time media streaming, and peer-to-peer data channels for sending encrypted arbitrary data packets without a central server. It supports secure media communication through end-to-end encryption for audio, video, and data streams. The SDK covers broad capabilities including
Eventyay Video is an online event management system and video conferencing platform designed to host virtual gatherings. It provides a unified environment for coordinating conferences and workshops by integrating live video streaming, interactive video calls, and real-time group communication tools. The platform utilizes a WebRTC-based architecture to facilitate direct browser-to-browser media connections and employs a selective forwarding unit to distribute video packets efficiently among participants. It incorporates server-side media stream transcoding to adjust resolution and bitrate base
This project is a comprehensive reference guide and directory of web browser capabilities. It serves as a technical map for accessing native operating system functions, hardware interfaces, and standard web APIs to bridge the gap between web applications and desktop or mobile environments. The resource provides detailed guidance on implementing Progressive Web App features, including offline caching, push notifications, and native installation prompts. It also catalogs methods for interacting with hardware peripherals via USB, Bluetooth, and NFC, as well as reading raw data from device sensor
Mongoose is an embedded networking library providing TCP/IP stacks, web server hosting, and IoT device connectivity. It enables microcontrollers and desktop systems to implement network protocols including HTTP, WebSocket, and MQTT. The project provides a bare-metal TCP/IP stack for environments without a native operating system and includes built-in TLS and ECC encryption to secure network traffic. It features a binary-embedded file system to serve web content directly from the executable and supports over-the-air firmware updates for managing device fleets. Additional capabilities cover as
Simpl is an HTML, CSS, and JavaScript example library that provides a collection of minimal functional demonstrations of core web technologies and native browser APIs. It serves as a reference implementation and pattern gallery for frontend development, offering practical examples of how to implement common web features. The project showcases a wide range of browser capabilities, including real-time web communication via WebSockets and WebRTC, responsive web design techniques for adaptive layouts, and the implementation of offline workflows using service workers. It also provides demonstratio
aiortc is a Python implementation of the WebRTC protocol, providing an asynchronous stack for real-time audio, video, and data streaming between peers. It functions as a media engine and data channel implementation that manages peer connections through a non-blocking framework. The library enables the establishment of direct peer-to-peer networking by negotiating session descriptions and connectivity paths. It facilitates secure, bidirectional data transmission via data channels and supports low-latency media streaming using standard codecs. The system includes capabilities for network NAT t
This project provides a comprehensive implementation of the WebSocket protocol, enabling persistent, bidirectional communication between clients and servers. It handles the low-level complexities of the protocol, including the initial HTTP upgrade handshake and the encapsulation of data into discrete binary frames. By managing these connections, it allows applications to exchange data instantly without the overhead associated with repeated standard request cycles. The library distinguishes itself through its focus on high-frequency message exchange and concurrent connection management. It uti
sshuttle is an SSH tunneling proxy and user-space network router that forwards local network traffic to a remote network via an encrypted SSH connection. It serves as an alternative to traditional VPN installations for routing traffic and accessing private remote resources. The project functions by redirecting network traffic through an SSH tunnel without requiring administrative privileges on the remote server. It utilizes a user-space TCP/IP stack to process packets, allowing it to operate without kernel-level administrative access. Its capabilities cover remote network access, secure remo
MailKit is a cross-platform .NET email protocol library used to implement IMAP, POP3, and SMTP functionality. It provides specialized client libraries for managing remote mailboxes, retrieving and downloading messages, and composing and transmitting emails to remote servers. The library supports secure identity verification through SASL authentication and OAuth 2.0 token-based flows. It includes capabilities for routing traffic through proxy gateways and decrypting PGP-encrypted content embedded within email bodies. The project covers a broad range of email operations, including folder manag
This project is flight control autopilot software designed as a real-time operating system for managing the flight dynamics and navigation of autonomous multicopters, fixed-wing aircraft, and rovers. It serves as a multi-vehicle autopilot framework that supports various aircraft configurations, including vertical takeoff and landing platforms across industrial environments. The system includes a MAVLink communication stack for exchanging telemetry and command data between unmanned vehicles and ground control stations. It also provides a software-in-the-loop flight simulator to test autopilot
Bitcore is a blockchain development framework and a set of libraries used to build applications that interact with the Bitcoin network and other blockchain protocols. It provides a multi-chain cryptocurrency wallet implementation, a peer-to-peer client for synchronizing distributed ledger data, and a transaction orchestrator for constructing, signing, and broadcasting transactions. The framework features a standardized JSON-RPC wrapper to normalize communication between applications and diverse blockchain node APIs. It implements hierarchical deterministic wallets that derive keys and address
go-libp2p is a Go implementation of the libp2p modular networking stack, providing a library for building peer-to-peer applications. It functions as a decentralized application framework that separates transport, security, and discovery layers into pluggable modules for cross-platform interoperability. The library establishes peer-to-peer connections through a modular transport abstraction that supports multiple protocols, while using public key cryptography for peer identity and protocol-agnostic security transports for encrypting and authenticating all traffic. It enables distributed peer d
NuttX is a POSIX-compliant real-time operating system designed for microcontrollers ranging from 8-bit to 64-bit architectures. It provides a deterministic execution environment with a real-time task scheduler and a POSIX embedded kernel to ensure portable code execution across diverse hardware targets. The project distinguishes itself through a comprehensive hardware abstraction layer that provides standardized drivers for I2C, SPI, CAN, and USB across various semiconductor chipsets. It also features an embedded networking stack supporting TCP, UDP, IPv4, and IPv6, alongside industrial proto