webtorrent - ⚡️ Streaming torrent client for the web

  •        85

WebTorrent is a streaming torrent client for node.js and the browser. YEP, THAT'S RIGHT. THE BROWSER. It's written completely in JavaScript – the language of the web – so the same code works in both runtimes. In node.js, this module is a simple torrent client, using TCP and UDP to talk to other torrent clients.

https://webtorrent.io
https://github.com/webtorrent/webtorrent

Dependencies:

addr-to-ip-port : ^1.4.2
bitfield : ^2.0.0
bittorrent-dht : ^9.0.0
bittorrent-protocol : ^3.0.0
chunk-store-stream : ^3.0.1
create-torrent : ^3.33.0
debug : ^4.0.1
end-of-stream : ^1.1.0
fs-chunk-store : ^1.6.2
immediate-chunk-store : ^2.0.0
load-ip-set : ^2.1.0
memory-chunk-store : ^1.2.0
mime : ^2.2.0
multistream : ^2.0.5
package-json-versionify : ^1.0.2
parse-numeric-range : ^0.0.2
parse-torrent : ^6.1.2
pump : ^3.0.0
random-iterate : ^1.0.1
randombytes : ^2.0.3
range-parser : ^1.2.0
readable-stream : ^3.0.2
render-media : ^3.0.0
run-parallel : ^1.1.6
run-parallel-limit : ^1.0.3
safe-buffer : ^5.0.1
simple-concat : ^1.0.0
simple-get : ^3.0.1
simple-peer : ^9.0.0
simple-sha1 : ^2.0.8
speedometer : ^1.0.0
stream-to-blob : ^1.0.0
stream-to-blob-url : ^2.1.0
stream-with-known-length-to-buffer : ^1.0.0
torrent-discovery : ^9.1.1
torrent-piece : ^2.0.0
uniq : ^1.0.1
unordered-array-remove : ^1.0.2
ut_metadata : ^3.3.0
ut_pex : ^1.1.1

Tags
Implementation
License
Platform

   




Related Projects

CacheP2P - "More users = More capacity"

  •    Javascript

CacheP2P is a highly distributed cache platform based on WebTorrent and runs only in the browser. It is a javascript library that once included in a website, makes every new user a mirror of the specific URL he has opened and allows it to serve it to all the other users that also are accessing the same website, so the website's server doesn't have to.

webtorrent-cli - WebTorrent, the streaming torrent client. For the command line.

  •    Javascript

WebTorrent is the first BitTorrent client that works in the browser, but webtorrent-cli, i.e. THIS PACKAGE, is for using WebTorrent from the command line. webtorrent-cli is a simple torrent client for use in node.js, as a command line app. It uses TCP and UDP to talk to other torrent clients.

webtorrent-hybrid - WebTorrent (with WebRTC support in Node.js)

  •    Javascript

In node.js, the webtorrent package only connects to normal TCP/UDP peers, not WebRTC peers. If you want to connect to all types of peers, including WebRTC peers, from node.js, you need to use this package (webtorrent-hybrid). Previous versions (0.x) of this package used wrtc, a WebRTC implementation via native extensions, the current one is based on electron-webrtc (which in turn uses electron-prebuilt) for better compatibility. It creates a hidden Electron process (which is based on Chromium, so WebRTC support is great!) and communicates with that process to enable WebRTC in Node.js. This adds a lot of overhead, so we are looking forward to using a pure JavaScript implementation, like perhaps Node-RTCPeerConnection when it's ready.

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

  •    Javascript

Node.js implementation of a BitTorrent tracker, client and server. A BitTorrent tracker is a web service which responds to requests from BitTorrent clients. The requests include metrics from clients that help the tracker keep overall statistics about the torrent. The response includes a peer list that helps the client participate in the torrent swarm.

instant.io - Streaming file transfer over WebTorrent (torrents on the web)

  •    Javascript

Download/upload files using the WebTorrent protocol (BitTorrent over WebRTC). Powered by WebTorrent, the first torrent client that works in the browser without plugins. WebTorrent is powered by JavaScript and WebRTC. Supports Chrome, Firefox, Opera (desktop and Android).


webtorrent-desktop - ❤️ Streaming torrent app for Mac, Windows, and Linux

  •    Javascript

Download specific installer files from the GitHub releases page. Try the (unstable) development version by cloning the Git repository. See the "How to Contribute" instructions.

PeerTube - Decentralized video streaming platform using P2P (BitTorrent) directly in the web browser with WebTorrent.

  •    TypeScript

PeerTube is a decentralized video streaming platform using P2P (BitTorrent) directly in the web browser with WebTorrent. It is difficult to build a FOSS video streaming alternatives to YouTube, Dailymotion, Vimeo... with a centralized software. One organization alone cannot have enough money to pay bandwidth and video storage of its server. So there is a need of decentralized network (as Diaspora for example). But it's not enough because one video could become famous and overload the server. It's the reason why P2P protocol is used to limit the server load.

hlsjs-p2p-engine - A free hls

  •    Javascript

All domain names that are not bound in the management system (https://oms.cdnbye.com) will stop providing P2P services. Please bind your domain names in time to avoid being affected. Put the quick-start.html in your web page, run it. Wait for a few seconds,then open the same page from another browser. Now you have a direct P2P connection between two browsers without plugin! The first web peer will serve as a seed, if no one else in the same channel.

BitTorrent++

  •    Python

Improved(download multiple files at once, config, GUI) client for the BitTorrent peer-to-peer sharing solution. This project is also the home of WebTorrent++ a BitTorrent client with a webbased user interface.

GitTorrent - A decentralization of GitHub using BitTorrent and Bitcoin

  •    Javascript

GitTorrent is a peer-to-peer network of Git repositories being shared over BitTorrent. You can read more about the project at this blog post.Note that GitTorrent is not affiliated with the git project.

simple-peer - 📡 Simple WebRTC video/voice and data channels

  •    Javascript

This module works in the browser with browserify.Note: If you're NOT using browserify, then use the included standalone file simplepeer.min.js. This exports a SimplePeer constructor on window.

webtorrent - Streaming torrent client for node & the browser

  •    Javascript

Streaming torrent client for node & the browser

peerflix-server - Streaming torrent client for Node.js with web ui.

  •    Javascript

Streaming torrent client for node.js with web ui. Based on torrent-stream, inspired by peerflix.

wave-share - Serverless, peer-to-peer, local file sharing through sound

  •    C++

A proof-of-concept for WebRTC signaling using sound. Works with all devices that have microphone + speakers. Runs in the browser. Nearby devices negotiate the WebRTC connection by exchanging the necessary Session Description Protocol (SDP) data via a sequence of audio tones. Upon successful negotiation, a local WebRTC connection is established between the browsers allowing data to be exchanged via LAN.

webtorrent-element - WebTorrent HTML element.

  •    Javascript

An HTML element you can use to display content on WebTorrent. Often a torrent contains many files but you only want to display one. You can do this using the file attribute.

socket.io-p2p

  •    Javascript

This module provides an easy and reliable way to setup a WebRTC connection between peers and communicate using events (the socket.io-protocol). Socket.IO is used to transport signalling data and as a fallback for clients where WebRTC PeerConnection is not supported.

Flash! Torrent

  •    Delphi

Flash! Torrent is a BitTorrent client that includes a small web browser for navigate in the webs about BitTorrent, an own tracker, etc. You can configure upload speed, know the number of seeds and peers of a torrent, multilanguage and much more...

DuckieTV - A web application built with AngularJS to track your favorite tv-shows with semi-automagic torrent integration

  •    Javascript

DuckieTV is an application that takes care of TV-Show addicts by providing a personalized TV-Show calendar. DuckieTV makes sure the information is always up-to-date and gives you an integrated blocking-resistant torrent search to help you get to the right download as easy as possible. With the integrated DuckieTorrent client you can connect DuckieTV to your local Torrent client and be updated on the download progress without switching applications. Support is available for clients of µTorrent/BitTorrent, Aria2, BiglyBT, Deluge, Ktorrent, qBittorrent, rTorrent, Tixati, Transmission and Vuze.

lbry-sdk - The LBRY SDK for building decentralized, censorship resistant, monetized, digital content apps

  •    Python

LBRY is a decentralized peer-to-peer protocol for publishing and accessing digital content. It utilizes the LBRY blockchain as a global namespace and database of digital content. Blockchain entries contain searchable content metadata, identities, rights and access rules. LBRY also provides a data network that consists of peers (seeders) uploading and downloading data from other peers, possibly in exchange for payments, as well as a distributed hash table used by peers to discover other peers. Our releases page contains pre-built binaries of the latest release, pre-releases, and past releases for macOS, Debian-based Linux, and Windows. Automated travis builds are also available for testing.