Об этом проекте

WebTorrent — это потоковый торрент-клиент для Node.js и браузера, написанный полностью на JavaScript, поэтому один и тот же код работает в обеих средах. В Node.js он использует TCP и UDP для взаимодействия с другими торрент-клиентами. В браузере применяются каналы данных WebRTC для peer-to-peer-передачи без необходимости плагинов или расширений. Браузерные клиенты WebTorrent могут подключаться только к другим клиентам, поддерживающим WebTorrent/WebRTC. Среди функций: одновременная загрузка нескольких торрентов, реализация на чистом JavaScript без нативных зависимостей и доступ к файлам как к потокам. Поддерживается выборочная загрузка частей, что позволяет перемещаться по файлу до завершения загрузки торрента, а также переключение между последовательной стратегией и стратегией rarest-first. Расширенные возможности включают поддержку magnet-ссылок, обнаружение пиров через DHT, трекер, LSD и ut_pex, а также API расширения протокола. В браузере можно транслировать видео-торренты в тег video через Chrome, Firefox, Opera и Safari. Установка выполняется через npm для использования в Node или собирается для браузера с помощью browserify и webpack. Отдельно доступна командная версия. Проект состоит из множества npm-модулей, включая bittorrent-dht, bittorrent-protocol, bittorrent-tracker, create-torrent и других. Лицензия MIT.