30 open-source projects similar to feross/simple-peer, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Simple Peer alternative.
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
This repository provides a collection of reference implementations and practical demonstrations for using WebRTC to establish real-time audio, video, and data communication. It contains code samples for negotiating peer-to-peer connections, managing media streams, and utilizing low-latency data channels. The project demonstrates the capture of audio and video from hardware devices, as well as the redirection of canvas element content into media streams. It includes examples of transferring arbitrary text and binary data between peers and managing the negotiation of direct connections. The sa
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
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 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
VDO.Ninja is a low-latency peer-to-peer media routing service and video streaming platform designed to integrate remote audio and video feeds into professional production workflows. It functions as a WebRTC broadcast integration tool and studio controller, allowing for the direct transmission of high-definition media between publishers and viewers with minimal delay. The platform distinguishes itself through extensive protocol bridging, converting between WebRTC, WHIP, WHEP, SRT, and RTMP to ensure compatibility across diverse network environments and professional studio software. It includes
This is a WebRTC video calling platform and browser-based video conferencing tool. It provides an instant communication room generator and an embeddable video call widget for hosting group audio and video calls directly in the browser. The platform enables a no-authentication communication workflow, allowing for the creation of unique, shareable links to establish private video sessions without requiring user account registration or software installation. The system supports real-time group video calling and provides capabilities for integrating the communication interface into external web
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
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
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
Janus is a WebRTC media gateway that routes real-time audio, video, and data between web browsers and server-side application logic. It functions as a central media relay that manages session negotiation and encryption for multiple browser endpoints. The project utilizes a modular plugin architecture that decouples the core server from specific media logic, allowing developers to implement custom modules for media processing, event handling, and transport protocols. This design enables the server to act as a protocol translation bridge, converting WebRTC streams into legacy formats such as SI
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
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
Filepizza is a web-based peer-to-peer file sharing application that enables direct browser-to-browser data exchange. It utilizes WebRTC to establish connections between devices, allowing files to be sent without uploading data to a central server. The project provides a password-protected file sharing mechanism that secures transmissions via symmetric-key stream encryption. It includes a containerized signaling server that can be self-hosted to coordinate connections between peers and facilitate NAT traversal across restrictive networks and firewalls. The application supports multi-file tran
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
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
Jitsi is an open-source communication suite providing a self-hosted platform for real-time video conferencing, audio calls, and instant messaging. It functions as a comprehensive toolkit for streaming voice and video across different devices and platforms, allowing for the deployment of private team collaboration environments. The project is distinguished by its multi-protocol communication bridging, which translates and exchanges data between diverse network standards including SIP, XMPP, and IRC. This allows users on different protocols to interact within a unified communication interface.
VidGear is a high-performance Python video processing framework designed for capturing, transcoding, and manipulating video streams. It functions as a multi-protocol video streamer and a WebRTC streaming server, enabling the transfer of video frames over networks using RTSP, RTMP, RTP, and MJPEG protocols. The project distinguishes itself through hardware-accelerated video transcoding and decoding using GPU backends like CUDA to reduce CPU load. It includes a cross-platform screen capture tool and a specialized system for establishing direct peer-to-peer media connections using WebRTC signali
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
PeerJS is a real-time communication library and framework designed to establish direct peer-to-peer data and media connections between browsers. It provides a simplified wrapper for managing the lifecycles of WebRTC connectivity, enabling the exchange of audio, video, and data without a central relay. The project includes a coordination server that handles signaling management by mapping unique user identities to network connection details. This server facilitates the discovery of remote peers and the exchange of metadata required to perform the initial connection handshake. The framework su
SpaceBarChat is an open-source, self-hosted chat server that implements the Discord client-server protocol, allowing existing Discord clients and bots to connect without modification. It provides a complete communication platform for real-time messaging, voice, and video, all running on your own infrastructure with data stored in a PostgreSQL database that automatically synchronizes its schema with the application source code. The platform is built on a three-service architecture that separates API, Gateway, and CDN processes, communicating via Unix domain sockets or RabbitMQ for coordination
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
Togetherjs is a real-time collaboration framework designed to synchronize application state, cursors, and navigation across multiple user sessions. It provides a synchronization tool for shared browsing and a signaling server to facilitate peer-to-peer communication. The project integrates audio chat and media streaming via peer-to-peer technology, allowing collaborators to engage in live voice communication. It includes a presence and identity manager to map session participants to custom profiles, names, and avatars. The framework covers a broad surface of collaborative capabilities, inclu
This is a Rust library and peer-to-peer toolkit that implements the WebRTC protocol. It provides a network stack for establishing direct audio, video, and data streaming between peers to achieve low-latency real-time communication. The project is designed as an async-compatible network stack that maintains compatibility across different asynchronous runtimes and executors. It further functions as a deterministic protocol testing tool by separating communication logic from network I/O, allowing protocol behavior to be verified without using live network traffic.
Deskreen is a wireless screen mirroring and virtual display tool that streams a computer screen or specific application windows to any device with a web browser. It functions as a virtual display streamer and a web-based secondary monitor, allowing users to extend their desktop workspace to remote devices over a local network. The system supports end-to-end encrypted screen sharing to protect display data and utilizes virtual display adapters to treat remote browsers as extended screens. It includes capabilities for multi-device broadcasting, enabling a single video source to be mirrored acro
This project provides KVM over IP hardware and software for remote computer management. It functions as an ATX power management controller, a remote serial console server, and a virtual media emulator. A WebRTC remote access gateway is used to bypass NAT and firewalls for low-latency hardware control via a web browser. The system is distinguished by its ability to simulate physical peripherals at the hardware level, including HID device emulation for keyboard and mouse input and USB mass storage emulation for streaming ISO images. It features a UART-to-web bridge for remote serial console acc
This project is an RTMP media streaming SDK and a real-time communication framework designed for pushing and playing audio and video streams. It provides tools for interactive broadcasting, low-latency voice and video calls, and a cross-platform media player compatible with Windows, iOS, and Android. The toolkit enables interactive live broadcasting with support for multi-host interactions and the ability to push streams to distribution servers via CDN. It includes a cloud recording manager for capturing live sessions and saving them as files to cloud storage, along with a system for composit
Ant-Media-Server is a server-side streaming engine designed for real-time audio and video broadcasting. It functions as a live media transcoder and WebRTC streaming server, facilitating the ingestion, processing, and delivery of media streams across multiple protocols. The platform is distinguished by its cloud-scale media infrastructure, which automates server capacity expansion to handle fluctuating volumes of concurrent viewers. It utilizes adaptive bitrate streaming to adjust video quality in real time based on network conditions and employs WebRTC and SRT to achieve ultra-low latency del
Sharedrop is a browser-based file drop application for transferring files directly between devices without requiring software installation or account registration. It uses WebRTC to establish peer-to-peer data channels, allowing files to be exchanged between different operating systems without routing traffic through a central server. The project provides mechanisms for both local and remote connectivity. It identifies active users sharing the same public IP address for immediate local device discovery and allows the creation of private sharing rooms via unique session links for users on diff