JavaScript WebRTC

Open-source JavaScript projects categorized as WebRTC

Top 23 JavaScript WebRTC Projects

  • webtorrent

    ⚡️ Streaming torrent client for the web

    Project mention: Streaming fine of 1500EUROS. | reddit.com/r/germany | 2023-01-25

    I stand corrected. https://webtorrent.io/ is a mediaclient implement in js which uses the BitTorrent protocol.

  • snapdrop

    A Progressive Web App for local file sharing

    Project mention: Ask HN: Why is AirDrop so slow? | news.ycombinator.com | 2023-02-05
  • Appwrite

    Appwrite - The Open Source Firebase alternative introduces iOS support . Appwrite is an open source backend server that helps you build native iOS applications much faster with realtime APIs for authentication, databases, files storage, cloud functions and much more!

  • samples

    WebRTC Web demos and samples (by webrtc)

    Project mention: Passing Blob to server and back to client? | reddit.com/r/learnprogramming | 2022-12-05

    I record video from a webcam using MediaRecorder 100ms segments in the way described here. When the piece is ready, I send it using socket.io to the server (on a node.js 6.3.0 server). The server writes this piece to the database and gives it to everyone else on the socket. It is known for sure that the correct data is coming to the server, I can save any piece and start the video (then I glue them together and get the recording). The problem is that when the data is returned back to the client, it is invalid.

  • WebRTC-Experiment

    WebRTC, WebRTC and WebRTC. Everything here is all about WebRTC!!

    Project mention: WebRTC Tutorials: 36 Essential Learning Resources | dev.to | 2022-10-03

    Library of WebRTC Demos --- A repository of pre-recorded and interactive demos for various WebRTC functions.

  • webtorrent-desktop

    ❤️ Streaming torrent app for Mac, Windows, and Linux

    Project mention: Opinião: Qual e o melhor serviço de streamings pra vocês atualmente? | reddit.com/r/brasil | 2023-01-19
  • Laverna

    Laverna is a JavaScript note taking application with Markdown editor and encryption support. Consider it like open source alternative to Evernote.

    Project mention: GitNoter alternatives - Laverna, Standard Notes, takenote, gitnote, and OpenNote | libhunt.com/r/gitnoter | 2022-04-25
  • BigBlueButton

    Complete open source web conferencing system.

    Project mention: Web based Video/audio chat solution with high quality single presenter video? | reddit.com/r/selfhosted | 2023-01-02

    I haven't used it to stream movies, but I use BigBlueButton fairly regularly for video/voice calls

  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.

  • simple-peer

    📡 Simple WebRTC video, voice, and data channels

    Project mention: WebTorrent | news.ycombinator.com | 2022-11-29

    Disclosure: I'm the author of WebTorrent.

    It's so fulfilling to see WebTorrent still popping up on Hacker News after all these years. I started the project in 2013 and devoted most of my 20s to working on it, ultimately becoming a full-time open source maintainer, and writing hundreds of npm packages including buffer (https://github.com/feross/buffer), simple-peer (https://github.com/feross/simple-peer), and StandardJS (https://standardjs.com/).

    I started WebTorrent with the goal of extending the BitTorrent protocol to become more web-friendly, allowing any browser to become a peer in the torrent network. Within less than a year of starting the project, I got WebTorrent fully working. And it worked _well_, beating many native torrent apps in terms of raw download speed and the ability to stream videos within seconds of adding a torrent.

    WebTorrent never got as much attention as the cryptocurrency projects selling tokens throughout the mid-2010s, even though WebTorrent actually worked and had more real users than almost all of them :) I was never tempted to add a crypto-token to WebTorrent, despite many well-meaning friends telling me to do it. Nonetheless, WebTorrent served as an accessible on-ramp to the world of decentralized tech, along with other projects like Dat (https://dat-ecosystem.org/) and Secure Scuttlebutt (https://scuttlebutt.nz/).

    But WebTorrent is more than a protocol extension to BitTorrent. We built a popular desktop torrent client, WebTorrent Desktop (https://webtorrent.io/desktop/), which supports powerful features like instant video streaming.

    We also build a `webtorrent` JavaScript package (see https://socket.dev/npm/package/webtorrent) which implements the full BitTorrent/WebTorrent protocol in JavaScript. This implementation uses TCP, UDP, and/or WebRTC for peer-to-peer transport in any environment – whether Node.js (TCP/UDP), Electron (TCP/UDP/WebRTC), or the web browser (WebRTC). In the browser, the `webtorrent` package uses WebRTC which doesn’t require a browser plugin, extension, or any kind of installation to work.

    If you’re building a website and want to fetch files from a torrent, you can use `webtorrent` to do that directly client-side, in a decentralized manner. The WebTorrent Workshop (https://webtorrent.github.io/workshop/) is helpful for getting started and teaches you how to download and stream a torrent into an HTML page in just 10 lines of code.

    Now that WebTorrent is fully supported in nearly all the most popular torrent clients, including uTorrent, dare I say that we succeeded? It's been a long and winding journey, but I'm glad to have played a role in making this happen. Special shoutouts to all the open source contributors over the years, especially Diego R Baquero, Alex Morais,

    P.S. If you're curious what I'm up to now, I'm building Socket (https://socket.dev). And there's actually a WebTorrent connection, too. Socket came out of a prior product we built called Wormhole (https://wormhole.app), an end-to-end encrypted file transfer application built using WebTorrent under-the-hood (Show HN thread: https://news.ycombinator.com/item?id=26666142). Like Firefox Send before it, security was a primary goal of Wormhole (see security details here: https://wormhole.app/security). But one area where we were lacking was in how we audited our open source dependencies. Like most teams building a JavaScript app, we had a large node_modules folder filled with lots of constantly updating third-party code. The risk of a software supply chain attack was huge, especially with 30% of our visitors coming from China. As most teams do, we enforced code review for all our first-party code. But similar to most teams, we were pulling in third-party dependencies and dependency updates without even glancing at the code (this is something that almost every company does today). We knew we needed to do better for our users. We looked around for a solution to analyze the risk of open source packages but none existed. So we decided to build Socket.

    Socket helps developers ship faster and spend less time on security busywork by helping them safely find, audit, and manage OSS. Socket provides a comprehensive open source risk analysis. By analyzing the full picture – from maintainers and how they behave, to open-source codebases and how they evolve – we enable developers and security teams to identify risk from malware, hidden code, typo-squatting, misleading packages, permission creep, unmaintained or abandoned packages, and poor security practices. For one quick example, take a look at the risks we identified in this Angular.js calendar library: https://socket.dev/npm/package/angular-calendar/issues/0.30....

  • sharedrop

    Easy P2P file transfer powered by WebRTC - inspired by Apple AirDrop

    Project mention: What app/tool do you use to transfer images from your iOS device and your Windows laptop? | reddit.com/r/ios | 2023-01-20

    https://www.sharedrop.io/ is pretty simple, works and doesn’t require any additional software (on either side).

  • RecordRTC

    RecordRTC is WebRTC JavaScript library for audio/video as well as screen activity recording. It supports Chrome, Firefox, Opera, Android, and Microsoft Edge. Platforms: Linux, Mac and Windows.

    Project mention: Any working screen recorder for Plasma Wayland? (beside OBS) | reddit.com/r/kde | 2022-11-22

    It is all local (and open source) as far as I can tell.

  • fonoster

    🚀 The open-source alternative to Twilio

    Project mention: Android SIP server (new to VOIP) | reddit.com/r/VOIP | 2023-01-31

    I was looking at maybe trying to use a softphone to receive calls from an Android phone. Is there any way to do this? I'm looking at maybe trying something like https://github.com/fonoster/fonoster (self-hosted twilio) aswell.

  • FilePizza

    :pizza: Peer-to-peer file transfers in your browser

    Project mention: Need help sending large files to another PC! | reddit.com/r/techsupport | 2023-01-02

    Consider using something like this https://file.pizza/ I found this from this Reddit post https://www.reddit.com/r/PiratedGames/comments/g0viu6/comment/fnd3a8l/?utm_source=share&utm_medium=web2x&context=3

  • adapter

    Shim to insulate apps from spec changes and prefix differences. Latest adapter.js release:

  • instant.io

    🚀 Streaming file transfer over WebTorrent (torrents on the web)

    Project mention: Whats the best alternative for Airdrop if you wanna transfer files between non Apple devices? | reddit.com/r/techsupport | 2022-12-31

    Option #2 https://instant.io/ (unlimited size - uses WebTorrent)

  • RTCMultiConnection

    RTCMultiConnection is a WebRTC JavaScript library for peer-to-peer applications (screen sharing, audio/video conferencing, file sharing, media streaming etc.)

    Project mention: Matrix-engine [1.8.4] | dev.to | 2022-10-28

    Credits && Licence: Video material used from :From youtube.com : Electric sheep - a facinating animated flame fractal TheMrNgaard Creative Commons Attribution licence (reuse allowed) Project Base Structure inspired by Copyright (C) 2014 Tappali Ekanathan Keestu ([email protected]) GNU General Public License Textures download from http://textures.com Dinamic texture bitcoin used from: Author:Ioannis Cherouvim GitHub:cherouvim Reddit:/r/cherouvim Website:cherouvim.com Compo:canvas Demo link:https://js1k.com/2017-magic/demo/2853 Shortlink:https://js1k.com/2853 Female 3d Object http://www.blendswap.com/blends/view/26225 Creative Commons Attribution 3.0 http://www.blendswap.com/users/view/AndresCuccaro https://freestocktextures.com/texture/bark-wood-plant,122.html https://github.com/Necolo/raycaster Great https://www.mixamo.com/ Player character https://www.mixamo.com/#/?page=1&query=walk&type=Motion%2CMotionPack BVH collections from: Special thanks to the CMU Graphics Lab Motion Capture Database which provided the data http://mocap.cs.cmu.edu/` Used in examples: BLACK FLY by Audionautix | http://audionautix.com Music promoted by https://www.free-stock-music.com Creative Commons Attribution-ShareAlike 3.0 Unported https://creativecommons.org/licenses/by-sa/3.0/deed.en_US Networking based on https://github.com/muaz-khan/RTCMultiConnection Keywords physicscannon.jsbvh-glmatrxbvh.jsbvh-skeletalbvh-webglbvh-loaderbvh-animationraycastraycast-glmatrixvanilla-jswebcam-texturevideo-texturecanvastexturessceneopengleswebglwebgl2glmatrixopengles23djavascriptopengles3matrixECMA6no-build-devbuild-prodbrowserifymatrix-enginealternativethree.js alternative

  • hubs

    Duck-themed multi-user virtual spaces in WebVR. Built with A-Frame.

    Project mention: Review of Mozilla Hubs? | reddit.com/r/LinusTechTips | 2022-12-04
  • blaze

    ⚡ File sharing progressive web app built using WebTorrent and WebSockets (by blenderskool)

    Project mention: Is there anyway I can share files between my Mac book and Windows laptop? | reddit.com/r/technepal | 2023-01-02

    NitroShare, Snapdrop, Magic Wormhole, and Blaze. Pick your poision.

  • mirotalk

    🚀 WebRTC - P2P - Simple, Secure, Fast Real-Time Video Conferences Up to 4k and 60fps, compatible with all browsers and platforms.

    Project mention: Free Secure WebRTC P2P/SFU/C2C Video Calls, Screen Sharing, File Sharing, Chat and more. | reddit.com/r/javascript | 2023-02-02

    I started the MiroTalk P2P & MiroTalk SFU projects during the pandemic period (about 1+ year ago), not knowing anything about the WebRTC. Making often the video conferences with my colleagues and not wanting to depend on Zoom, Teams, Google Meet... I decided to do some research about how it works and from there MiroTalk was born :) I Giving to everyone the chance to have its own instance of MiroTalk, which can be customized as you like and run in any cloud, vps, server. If you're just starting out, I suggest you take a look at the MiroTalk C2C (New) code, which can be a good starting point to understand how the architecture WebRTC Mesh (P2P) works. Later you can also study how the WebRTC SFU (Selective Forwarding Units - I recommend mediasoup which I personally love) or MCU (Multipoint Control Unit) architecture works. I wish you all the best!

  • bittorrent-tracker

    🌊 Simple, robust, BitTorrent tracker (client & server) implementation

    Project mention: PeerJS alternatives for self-hosting? | reddit.com/r/WebRTC | 2022-09-25

    It works great! By default it leverages public WebTorrent trackers to connect users, but you can also host your own with https://github.com/webtorrent/bittorrent-tracker.

  • jitsi-meet-electron

    Jitsi Meet desktop application powered by :electron:

    Project mention: Jitsi: More secure, more flexible, and completely free video conferencing | news.ycombinator.com | 2022-12-21

    I love Jitsi Meet. My friends and I started using it during COVID and it's constantly improved. I host my own instance using docker and it's a breeze.

    One issue that really prevents us replacing Mumble with it completely is lack of Push-to-talk [1], which is necessary for gaming etc. Do you know of anyone working on a native desktop app (open source or otherwise)?

    [1] https://github.com/jitsi/jitsi-meet-electron/issues/210

  • spreed

    🗨️ Nextcloud Talk – chat, video & audio calls for Nextcloud

    Project mention: ⟳ 0 apps added, 38 updated at f-droid.org | reddit.com/r/FDroidUpdates | 2022-12-18

    Nextcloud Talk (version 15.0.3): Have private video calls and chat using your own server.

  • mirotalksfu

    🏆 WebRTC - SFU - Simple, Secure, Scalable Real-Time Video Conferences Up to 4k, compatible with all browsers and platforms.

    Project mention: Free Secure WebRTC P2P/SFU/C2C Video Calls, Screen Sharing, File Sharing, Chat and more. | reddit.com/r/javascript | 2023-02-02

    I started the MiroTalk P2P & MiroTalk SFU projects during the pandemic period (about 1+ year ago), not knowing anything about the WebRTC. Making often the video conferences with my colleagues and not wanting to depend on Zoom, Teams, Google Meet... I decided to do some research about how it works and from there MiroTalk was born :) I Giving to everyone the chance to have its own instance of MiroTalk, which can be customized as you like and run in any cloud, vps, server. If you're just starting out, I suggest you take a look at the MiroTalk C2C (New) code, which can be a good starting point to understand how the architecture WebRTC Mesh (P2P) works. Later you can also study how the WebRTC SFU (Selective Forwarding Units - I recommend mediasoup which I personally love) or MCU (Multipoint Control Unit) architecture works. I wish you all the best!

  • jam

    🍓 Jam is your own open source Clubhouse for mini conferences, friends, communities (by jam-systems)

    Project mention: Top Webflow tools and integrations. Part 1. | reddit.com/r/webflow | 2022-06-20

    Jam pro

  • Sonar

    Write Clean JavaScript Code. Always.. Sonar helps you commit clean code every time. With over 300 unique rules to find JavaScript bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-02-05.

JavaScript WebRTC related posts

Index

What are some of the best open-source WebRTC projects in JavaScript? This list will help you:

Project Stars
1 webtorrent 27,459
2 snapdrop 14,610
3 samples 12,572
4 WebRTC-Experiment 11,075
5 webtorrent-desktop 9,121
6 Laverna 8,984
7 BigBlueButton 7,845
8 simple-peer 6,652
9 sharedrop 6,117
10 RecordRTC 5,696
11 fonoster 5,484
12 FilePizza 3,976
13 adapter 3,365
14 instant.io 3,187
15 RTCMultiConnection 2,397
16 hubs 1,944
17 blaze 1,604
18 mirotalk 1,579
19 bittorrent-tracker 1,520
20 jitsi-meet-electron 1,377
21 spreed 1,329
22 mirotalksfu 1,159
23 jam 1,157
Write Clean JavaScript Code. Always.
Sonar helps you commit clean code every time. With over 300 unique rules to find JavaScript bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.
www.sonarsource.com