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. Learn more →
Top 23 JavaScript P2P Projects
-
I stand corrected. https://webtorrent.io/ is a mediaclient implement in js which uses the BitTorrent protocol.
-
Project mention: Professor of law, Bruce Pardy on Trudeau's upcoming internet censorship in 2023. | reddit.com/r/Canada_sub | 2023-01-11
Nothing can be censored here. Nothing. https://zeronet.io. read that again. Nothing can be censored because it is 100% decentralized, that is the opposite of centralized power.
-
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!
-
Project mention: Meet OctoBase - AFFiNE's local-first, collaborative open-source database! | reddit.com/r/rust | 2023-01-31
-
Project mention: Hindsight is a free and open-source retrospective board | reddit.com/r/javascript | 2023-01-07
No back-end. Data is shared via WebRTC directly between connected browsers. I'm using Yjs to help me with that.
-
Project mention: Opinião: Qual e o melhor serviço de streamings pra vocês atualmente? | reddit.com/r/brasil | 2023-01-19
-
Project mention: orbit-db VS db3 - a user suggested alternative | libhunt.com/r/orbit-db | 2023-01-15
-
Project mention: How to store your app's entire state in the url | news.ycombinator.com | 2023-01-09
Store the content in ipfs and just put the hash in the URL? I haven't used https://github.com/ipfs/js-ipfs in this capacity but I'm under the impression that that's what it's supposed to do.
-
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.
-
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....
-
Project mention: Ask HN: Those making $0/month or less on side projects – Show and tell | news.ycombinator.com | 2023-01-27
it sounds a lot like you're reinventing what Beaker Browser had built on top of DAT, except that it could do more. For example, they made a distributed Twitter clone as a proof of concept, but folks actually started using it. Definitely included blogging stuff.
Really cool stuff around taking sites and things other folks had built and using them as a basis for your new thing.
-
ipfs-desktop
An unobtrusive and user-friendly desktop application for IPFS on Windows, Mac and Linux.
Project mention: Can anyone tell me here, how can i open ipfs links on my Brave browser ? I had done everything, but it still it is not opening. | reddit.com/r/IPFS_Hashes | 2022-12-10 -
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)
-
Project mention: Can anyone tell me here, how can i open ipfs links on my Brave browser ? I had done everything, but it still it is not opening. | reddit.com/r/IPFS_Hashes | 2022-12-10
-
-
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-02Hello teleden, Every time I post something, there's always someone asking the same question as you :) You can try the all my live demo versions and see the diffs: MiroTalk P2P GitHub: https://github.com/miroslavpejic85/mirotalk Demo: https://p2p.mirotalk.com/ MiroTalk SFU GitHub: https://github.com/miroslavpejic85/mirotalksfu Demo: https://sfu.mirotalk.com/ MiroTalk C2C GitHub: https://github.com/miroslavpejic85/mirotalkc2c Demo: https://c2c.mirotalk.com/ I think it's just a matter of personal tastes...! Thank you!
-
Project mention: I wish I could "seed" a server like a torrent, has there been any work to make this possible? | reddit.com/r/Mastodon | 2022-11-12
webui.ipfs.io
-
rats-search
BitTorrent P2P multi-platform search engine for Desktop and Web servers with integrated torrent client.
-
Project mention: Static torrent website with peer-to-peer queries over BitTorrent on 2M records | news.ycombinator.com | 2022-03-08
I'm not talking about the consensus protocol of the blockchain itself, but of the p2p algorithms underlying it, e.g. using Kademlia for service discovery and message routing. I'm asking why a distributed system would choose something like Consul (which uses Raft, and requires a coordinator node) instead of running a decentralized protocol like Kademlia (which has no coordinator nodes) within their distributed single-tenant environment.
I did a bit more research last night, and discovered that Bitfinex actually does something like this internally (anyone know if this is up to date?) [0] — they built a service discovery mesh by storing arbitrary data on a DHT implementing BEP44 (using webtorrent/bittorrent-dht [1]).
This seems pretty cool to me, and IMO any modern distributed system should consider running decentralized protocols to benefit from their robustness properties. Deploying a node to a decentralized protocol requires no coordination or orchestration, aside from it simply joining the network. Scaling a service is as simple as joining a node to the network and announcing its availability of an implementation of that service.
At first glance, this looks like a competitive advantage, because it decouples the operational and maintenance costs of the network from the size of the network.
So I'm wondering if there is a consistent tradeoff in exchange for this robustness — are decentralized applications more complex to implement but simpler to operate? Is latency of decentralized protocols (e.g. average number of hops to lookup item in a DHT) untenably higher than that of distributed protocols (e.g. one hop once to get instructions from coordinator, then one hop to lookup item in distributed KV)? Does a central coordinator eliminate some kind of principle agent problem, resulting in e.g. a more balanced usage of the hashing keyspace?
Decentralization emerged because distributed solutions fail in untrusted environments — but this doesn't mean that decentralized solutions fail in trusted environments. So why not consider more decentralized protocols to scale internal systems?
-
-
there's torrent cli clients like https://github.com/webtorrent/webtorrent-cli
-
-
-
Project mention: I built a tiny slack alternative for the decentralized web | reddit.com/r/Rad_Decentralization | 2022-11-29
-
Idk but you might want to check out Open Bazaar. Seems like development has stopped though.
-
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.
JavaScript P2P related posts
- gun: NEW Data - star count:16810.0
- gun: NEW Data - star count:16810.0
- gun: NEW Data - star count:16810.0
- gun: NEW Data - star count:16810.0
- gun: NEW Data - star count:16810.0
- gun: NEW Data - star count:16810.0
- Peer-to-peer ephemeral public communities
-
A note from our sponsor - InfluxDB
www.influxdata.com | 2 Feb 2023
Index
What are some of the best open-source P2P projects in JavaScript? This list will help you:
Project | Stars | |
---|---|---|
1 | webtorrent | 27,459 |
2 | ZeroNet | 17,783 |
3 | gun | 16,858 |
4 | yjs | 10,437 |
5 | webtorrent-desktop | 9,121 |
6 | orbit-db | 7,437 |
7 | ipfs | 7,260 |
8 | simple-peer | 6,652 |
9 | beaker | 6,642 |
10 | ipfs-desktop | 4,882 |
11 | instant.io | 3,187 |
12 | ipfs-companion | 1,841 |
13 | ufonet | 1,758 |
14 | mirotalk | 1,565 |
15 | ipfs-webui | 1,385 |
16 | rats-search | 1,210 |
17 | bittorrent-dht | 1,125 |
18 | aether | 1,101 |
19 | webtorrent-cli | 905 |
20 | CacheP2P | 867 |
21 | FileNation | 851 |
22 | cabal-desktop | 775 |
23 | openbazaar-desktop | 641 |