porla

0.21.0 • Public • Published

Porla

Porla is a programmable BitTorrent client built for seedboxes and servers. It has a feature-rich API allowing users to customize their Porla instance as they wish.

Porla is currently in its early days - the documentation may be sparse.

ℹ️ Requires Node.js v10.

Features

  • Built with native bindings to Rasterbar-libtorrent to provide great performance and low memory-cost.
  • Easy-to-use API allows users to write plugins and scripts to customize and extend Porla.
  • (Optionally) keep Porla in a (D)VCS to track of changes you make.

Getting started

The easiest way to get started is to use npm init.

  • $ npm init porla

Setting up an instance from scratch

Want to do it the old fashioned way? No problem!

  • $ npm install --save porla @porla-contrib/autoadd
const porla   = require('porla');
const autoadd = require('@porla-contrib/autoadd');

const app = porla({
    plugins: [
        // Set up the autoadd plugin to watch a folder for torrents. Any
        // torrent added here is added to Porla.
        autoadd('/mnt/storage/torrents'),
    ],

    // The default save path where new downloads are saved.
    savePath: '/mnt/storage/downloads'
});

app.on('torrent.finished', ({ torrent }) => [
    // Add event handlers for the torrent.finished event here. Perhaps send a
    // notification or execute another application?
    sendMessage(`Torrent ${torrent.name} finished.`)
]);

Next steps

Package Sidebar

Install

npm i porla

Homepage

porla.org

Weekly Downloads

0

Version

0.21.0

License

MIT

Unpacked Size

36.1 kB

Total Files

16

Last publish

Collaborators

  • vktr