Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-webrtc
Community list of awesome projects, apps, tools, libraries and more related to WebRTC
https://github.com/nuzulul/awesome-webrtc
Last synced: about 17 hours ago
JSON representation
-
Projects
-
Game
- allkaraoke - Online Karaoke game with pitch detection in your browser.
- The Superviral Word Game - A Vue word game based on the Yakut national sport "Mas-wrestling". Uses XState for state management, WebRTC for multiplayer and has custom WebGL engine.
-
Streaming
- Ant Media Server - Live streaming engine software that provides adaptive, ultra low latency streaming by using WebRTC technology with ~0.5 seconds latency.
- Coplay - Synchronizing video play between two peers.
- Metastream - Watch streaming media with friends.
- MiroTalk WebRTC Live Broadcast - Allows to broadcast live video, audio and screen stream to all connected users (viewers).
- OvenPlayer - OvenPlayer is JavaScript-based LLHLS and WebRTC Player for OvenMediaEngine.
- Project Lightspeed - A self contained OBS -> FTL -> WebRTC live streaming server. Comprised of 3 parts once configured anyone can achieve sub-second OBS to the browser livestreaming.
- rtwatch - Watch videos with friends using WebRTC, let the server do the pausing and seeking.
- TStream - Live streaming from your terminal.
- VDO.Ninja - Powerful tool that lets you bring remote video feeds into OBS or other studio software via WebRTC.
-
Video Conference
- BigBlueButton - Complete open source web conferencing system.
- edumeet - Multiparty web-meetings using mediasoup and WebRTC.
- Galene - Videoconferencing server that is easy to deploy and requires moderate server resources.
- Jitsi Meet - Secure, Simple and Scalable Video Conferences that you use as a standalone app or embed in your web application.
- kollokvium - Online meetings made easy, secure and private for everyone.
- MiroTalk P2P - Simple, Secure, Fast Real-Time Video Conferences Up to 4k and 60fps, compatible with all browsers and platforms.
- MiroTalk SFU - Simple, Secure, Scalable Real-Time Video Conferences Up to 4k, compatible with all browsers and platforms.
- Nettu Meet - Open source video conferencing system for tutors.
- OpenVidu - Create custom videoconference services with ease.
- persianmeet - Free Adobe Connect Alternatives.
- Plug-N-Meet - WebRTC based Scalable, High Performance, Open source web conferencing system using Livekit.
- quik - Free video conferencing over WebRTC in Go.
- Roomler - Multi-party Video Conferencing & Team Collaboration Tool using WebRTC (Janus Gateway).
- Talk - Group video call for the web. No signups. No downloads.
- Trio Calls - A multi-participant video call platform for calling across the world for free with screen sharing.
- Wirow - A full featured self-hosted video web-conferencing platform.
- call-me - Your Go-To for Instant Video Calls!
-
Chat
- Databag - A tiny selfhosted federated messenger for the decentralized web.
- jsxc - Real-time xmpp chat application with video calls, file transfer and encrypted communication.
- Gise - Video chat application for your own web server.
- otr.to - A secure peer-to-peer chat in your web browser.
- quickmeet - A video chat/meeting webapp using WebRTC and WebSockets. Basically a Google Meet clone + a collaborative Whiteboard.
- talkhouse - WebRTC based peer to peer voice, video calling and messaging web app build with MERN stack.
- tl-rtc-file-tool - WebRTC P2P online web media streaming tool (for files, video, screen, live streaming, text) with management and statistical monitoring capabilities.
- Heyy - A Realtime Chat Application using flutter, Asp.Net Core Web Api, SignalR , WebRTC etc.
- Chitchatter - Secure peer-to-peer chat that is serverless, decentralized, and ephemeral.
- Pychat - Webchat via WebSockets/WebRTC that allows messaging/video call/screen sharing.
-
Screen
- Deskreen - Turns any device with a web browser into a secondary screen for your computer.
- laplace - Laplace is an open-source project to enable screen sharing directly via browser.
- Odin - An open-source screen recorder built with web technology.
- pear-rec - Screenshot, screen recording, audio recording, and video recording software based on Electron.
- picklecast - Share your screen to a projector with only a web-browser.
- screensy - Simple peer-to-peer screen sharing.
- Spreen - The Screen Sharing App.
- UltraScreen - Share your screen.
- PeerWave - WebRTC share peer to peer to peer.
-
File Transfer
- filedrop - WebRTC E2E encrypted file transfer - React + Node.js.
- Filegogo - A file transfer tool that can be used in the browser WebRTC p2p.
- FilePizza - Peer-to-peer file transfers in your browser.
- GFile - Direct file transfer over WebRTC.
- PairDrop - Local file sharing in your browser.
- Pipe File Transfer - Web application for real-time file transfer using WebRTC.
- ShareDrop - Easy P2P file transfer powered by WebRTC - inspired by Apple AirDrop.
- WebDrop - Easiest group P2P File & Message transfer in browser with WebRTC.
- zero-share - A client-side secure P2P file sharing using WebRTC.
- Peertransfer - Send a file p2p and e2e encrypted in your browser using WebRTC.
- peermesh - Exchange files p2p and e2e encrypted over a fully meshed network in your browser using WebRTC.
- Snapdrop - A Progressive Web App for local file sharing.
- WIFIDrop - Instant transfer unlimited size of files over WIFI powered by WebRTC.
-
Tool
- flok - Web-based P2P collaborative editor for live coding sounds and images.
- neko - A self hosted virtual browser that runs in docker and uses WebRTC.
- Parkerr - Parking detection and monitoring webapp that runs entirely in the browser.
- Project S.A.T.U.R.D.A.Y - A toolbox for working with WebRTC, Audio and AI.
- remotecontrol-desktop - Remote Control Desktop is a robust, reliable and fast remote desktop software for Windows / macOS / Linux.
- selkies-gstreamer - Open-Source Low-Latency Linux WebRTC HTML5 Remote Desktop / GStreamer WebRTC Components of Selkies.
- sshx - P2P SSH using WebRTC.
- tiny-web-metaverse - A web-based 3D virtual space lightweight framework with high flexibility, extensibility, and easy hosting, built on ECS architecture.
- uProxy - Browser extension that lets users share their internet connection.
- WebRTC Camera - Home Assistant custom component for real-time viewing of almost any camera stream using WebRTC and other technologies.
-
WebRTC Server
- Janus - Open source, general purpose, WebRTC server designed and developed by Meetecho.
- Kurento - Kurento Media Server is responsible for media transmission, processing, loading and recording.
- Kraken - High performance WebRTC SFU implemented with pure Go.
- livekit - End-to-end stack for WebRTC. SFU media server and SDKs.
- Jitsi Videobridge - WebRTC-compatible Selective Forwarding Unit (SFU), i.e. a multimedia router.
-
Audio
- webrtc-cli - WebRTC command-line peer.
- wireless-microphone - Turn any device into a wireless microphone over the internet.
- babelcast - WebRTC audio broadcast server.
-
-
Samples
- React-VideoCall - WebRTC-React App for Video Calling.
- Electron Screen Recorder - A WebRTC screen recorder electron application.
- media-server-go-demo - WebRTC media server go demo.
- p2p-chat - Serverless peer to peer chat on WebRTC.
- Peer-to-Peer Cue System - Cue system for simple two-way communication and visual signaling using a PeerJS peer-to-peer connection.
- react-webrtc - Video chat using webRTC and react.
- React Native webRTCApp - React native WebRTC app demo.
- Realtime Chat Application - React Video Chat Application using WebRTC.
- Record Audio-Videos - Examples to record using getUserMedia.
- serverless-webrtc - WebRTC p2p without signalling server.
- stream-live-system - An example of a live broadcast system using microservice concepts and architected with docker.
- transparent-virtual-background - Transparent backgrounds with WebRTC.
- Video-Call-App - A text, audio and video chat application built with WebRTC and Ratchet (PHP WebSocket).
- Video Chat - Video calling and chatting app (PWA) built using React.js, WebRTC and Socket.io.
- video-chat - This application is a video-chat built using WebRTC and P2P Connections where you can call and talk to all online users.
- Video Chat WebApp - Video Chat WebApp using Node.js | Redis | VueJS | WebRTC | Socket.io.
- Video Meeting - Google Meet / Zoom clone in a few lines of code.
- video-group-meeting - WebRTC video chat for multi users using React and Node Express.
- videosdk-rtc-react-sdk-example - WebRTC based video conferencing SDK for React JS.
- Video-conferencing-web-application - Developed a multi-party video conferencing and web chat application using WebRTC, JavaScript and Web-sockets with features such as canvas sharing, presentation sharing and video sharing.
- webrtc - Mirror of The Official WebRTC repository.
- webrtc-video-conference-simple-peer - A simple video conferencing example using simple-peer.
- webrtc-cpp-sample - Sample program for using WebRTC on C++.
- WebRTC Code Samples - WebRTC Web demos and samples.
- webrtc-data-channel-demo - WebRTC Data Channel demo.
- WebRTC Experiment - WebRTC, WebRTC and WebRTC. Everything here is all about WebRTC.
- webrtc-examples - WebRTC Examples.
- webrtc-sample - Demo app to learn WebRTC. Communicates with itself via RTCPeerConnection.
- WebRTC Video/Audio Broadcast - WebRTC video/audio broadcast.
- WebRTC Video Conference - WebRTC video conference app.
- Yew-WebRTC-Chat - A simple WebRTC chat made with Yew.
- Video-Call-App-NodeJS - A conference call implementation using WebRTC, Socket.io and Node.js.
- WebRTC-Demo - WebRTC demo on Web, Android and iOS.
- webrtc-starter - A scaffolding for a WebRTC app - native JavaScript and socket.io for signaling.
- webrtc-node-app - This repository contains a simple WebRTC app, created for educational purposes.
- Cube Slam by Google - Cube Slam is a video game that you can play face-to-face against your friends.
- go-video-conference - Create a video conference using Golang.
- Video-Call-App-Node.js - A conference call implementation using WebRTC, Socket.io and Node.js.
-
Libraries
-
JavaScript
- WebTorrent - Streaming torrent client for the web.
- data-transport - A simple and responsible universal transport.
- DetectRTC - A tiny JavaScript library that can be used to detect WebRTC features e.g. system having speakers, microphone or webcam, screen capturing is supported, number of audio/video devices etc.
- discovery-swarm-webrtc - Discovery-swarm for WebRTC.
- instacam - Library to perform instant canvas video through the WebRTC API with a fresh touch of CSS filters.
- liowebrtc - An event-based WebRTC library that makes it easy to embed real-time peer to peer communication into UI components.
- MediaStreamRecorder - Cross browser audio/video/screen recording.
- MultiStreamsMixer - JavaScript library that allows you pass multiple streams (e.g. screen+camera or multiple-cameras) and get single stream.
- NetplayJS - Make P2P multiplayer browser games, no server hosting or synchronization code required, powered by rollback netcode + WebRTC.
- P2P Media Loader - An open-source engine for P2P streaming of live and on demand video directly in a web browser HTML page.
- PeerLite - Lightweight WebRTC browser library that supports video, audio and data channels.
- peerjs - Simple peer-to-peer with WebRTC.
- peerfetch - Peer-to-peer HTTP over WebRTC.
- RTCMultiConnection - WebRTC JavaScript library for peer-to-peer applications (screen sharing, audio/video conferencing, file sharing, media streaming etc).
- RecordRTC - WebRTC JavaScript library for audio/video as well as screen activity recording.
- simple-peer - Simple WebRTC video, voice, and data channels.
- simple-peer-files - A library to send files over WebRTC.
- trystero - Build instant multiplayer webapps, no server required.
- video-stream-merger - Merge multiple video MediaStreams into one composite.
- WebRTCStats - Helps you collect stats for peer connections.
- webrtc-issue-detector - Diagnostic tool and troubleshooter for WebRTC applications with Mean Opinion Score (MOS) calculator.
- adapter.js - JavaScript shim for abstracting WebRTC spec changes and inconsistencies.
- LiveKit browser client SDK - Add real-time video, audio and data features to your JavaScript/TypeScript app.
- webConnect.js - Auto WebRTC Mesh P2P Network without signaling server.
- WebPEER - WebPEER is a novel decentralized P2P network overlay in browser-side with a chance of working.
-
Node
- medooze-media-server - WebRTC Media Server for Node.js.
- node-webrtc - Node.js Native Addon that provides bindings to WebRTC.
- werift-webrtc - WebRTC Implementation for TypeScript (Node.js), includes ICE/DTLS/SCTP/RTP/SRTP/WEBM/MP4.
- node-datachannel - Easy to use WebRTC data channels and media transport. libdatachannel node bindings.
-
Go
- Pion WebRTC - A pure Go implementation of the WebRTC API.
- RTCTunnel - RTCTunnel builds network tunnels over WebRTC.
-
C/C++
- datachannel-wasm - C++ WebRTC Data Channels and WebSockets for WebAssembly in browsers.
- HumbleNet - A cross-platform networking library that works in the browser.
- libdatachannel - C/C++ WebRTC network library featuring Data Channels, Media Transport, and WebSockets.
- rawrtc - WebRTC and ORTC with a little bit of RAWR.
- libpeer - WebRTC Library for IoT/Embedded Device using C.
- libwebrtc - A C++ wrapper for binary release, mainly used for flutter-webrtc desktop (windows, linux, embedded).
- MetaRTC - A cross-platform WebRTC SDK.
- WebUDP - Minimal WebRTC datachannel server.
-
-
Archived
-
Tool
- hyperhost - P2P Node Servers in the Browser.
- Open WebRTC Toolkit - Client SDK for native Windows/Linux/Android/iOS applications is built upon the W3C WebRTC standard to accelerate the development of real time communication applications on these platform.
-
-
Signaling Server
-
C/C++
- SIP.js - A simple, intuitive, and powerful JavaScript signaling library.
- flutter-webrtc-server - A simple WebRTC signaling server for flutter-webrtc.
- PeerServer - PeerServer helps establishing connections between PeerJS clients.
- Simple WebRTC Signaling Server - A WebRTC signaling server implemented in Node.js with Socket.io.
- Cignal - Cignal, a minimalistic yet scalable WebRTC signaling server written in Node.js.
- simple-signal - Signalling solution for simple-peer with socket.io.
- VideoWhisper WebRTC - Signaling Server with STUN/TURN Support.
- WebRTC Signaling Server using Spring Boot - A simple example Signaling Server for WebRTC using WebSocket Protocol.
- Ayame - WebRTC Signaling Server.
- singo - Simple WebRTC Signaling Server written in Go.
-
-
C/C++
- momo - WebRTC Native Client Momo.
-
Stun & Turn
-
C/C++
- go-stun - A go implementation of the STUN client (RFC 3489 and RFC 5389).
- Pion TURN - Go toolkit for building TURN servers and clients.
- STUNTMAN - An open source STUN server.
- STUNNER - Stunner is a tool to test and exploit STUN, TURN and TURN over TCP servers.
- STUNner - A Kubernetes media gateway for WebRTC.
- turn-rs - A pure rust implemented TURN server.
- violet - Lightweight STUN/TURN server.
- Eturnal - STUN / TURN standalone server.
- Coturn - Free open source implementation of TURN and STUN Server.
- stun - Low-level Session Traversal Utilities for NAT (STUN) client and server.
-
-
Official
-
Miscellaneous
-
Tool
- aiortc - WebRTC and ORTC implementation for Python using asyncio.
- cordova-plugin-iosrtc - Cordova iOS plugin exposing the WebRTC W3C API.
- Flutter-WebRTC - WebRTC plugin for Flutter Mobile/Desktop/Web.
- libwebrtc - Google WebRTC implementation in a single static library.
- Matchbox - Painless peer-to-peer WebRTC networking for rust wasm (and native!).
- peer-stream - Lightweight WebRTC SDK for UnrealEngine PixelStreaming.
- Python WebRTC - Python extension that provides bindings to WebRTC M92.
- React-Native-WebRTC - A WebRTC module for React Native.
- rpi-webrtc-streamer - Web Cam server on the most popular Raspberry PI hardware.
- WebRTC.rs - Pure Rust implementation of WebRTC stack, which rewrites Pion stack in Rust.
- WebRTC-iOS - A simple native WebRTC demo iOS app using swift.
- webrtc-java - WebRTC for desktop platforms running Java.
- WebRTC Android - A versatile WebRTC pre-compiled Android library that reflects the recent WebRTC updates to facilitate real-time video chat for Android and Compose.
- Android WebRTC - WebRTC pre-compiled library for android.
- OBS-studio WebRTC - This is a fork of OBS-studio with generic support for webrtc.
- rings - Rings is a structured peer-to-peer network implementation using WebRTC, Chord algorithm, and full WebAssembly (WASM) support.
- WebRTC for Unity - WebRTC package for Unity.
- androidwebrtcexample - WebRTC Android example.
-
-
Tutorial
- WebRTC codelabs - Real time communication with WebRTC.
- WebRTC developer - Enable real-time communication with WebRTC.
- WebRTC guides - Getting started with WebRTC.
- WebRTC For The Curious - Open-source book created by WebRTC implementers to share their hard-earned knowledge with the world.
- WebRTC on web.dev - Get started with WebRTC.
- WebRTC introduction - Introduction to WebRTC protocols.
- WebRTC infrastructure - Build the backend services needed for a WebRTC app.
-
Discussion
- webrtc - WebRTC on Stack Overflow.
- discuss-webrtc - WebRTC on Google Groups.
- r/WebRTC - WebRTC on Reddit.
Programming Languages
Categories
Sub Categories
Keywords
webrtc
176
p2p
33
javascript
29
peer-to-peer
22
typescript
19
video
19
nodejs
16
video-conferencing
16
webrtc-demos
15
react
13
chat
12
golang
12
socket-io
11
streaming
10
reactjs
9
go
9
webrtc-video
9
file-sharing
9
video-chat
8
websocket
8
sfu
8
audio
8
webrtc-experiments
8
electron
7
webrtc-libraries
7
end-to-end-encryption
7
decentralized
7
screensharing
7
docker
7
turn
6
realtime
6
peerjs
6
video-call
6
self-hosted
6
stun
6
pion
6
ios
6
voip
6
webtorrent
5
browser
5
raspberry-pi
5
datachannel
5
android
5
websockets
5
collaboration
5
stream
5
peer
4
webapp
4
p2p-network
4
webrtc-call
4