rb-libtorrent bindings for node.js

npm install node-libtorrent
2 downloads in the last week
13 downloads in the last month


node-libtorrent provides native bindings to libtorrent rastebar as a Node.js addon.

Getting started

Execute in command line:

$ npm install node-libtorrent

or copy repository and build bindings manually

$ git clone git://
$ cd node-libtorrent
$ npm install -g node-gyp
$ node-gyp configure
$ node-gyp build


Simple client

lt = require "../build/Release/libtorrent"

s = new lt.session()
s.listen_on([6881, 6889])
ti = new lt.torrent_info "./test.torrent"
th = s.add_torrent
  ti: ti
  save_path: "./test_torrent"
main = ->
  st = th.status()
  console.log "#{st.progress*100} complete \
(down: #{st.download_rate / 1000} kb/s | up: #{st.upload_rate / 1000} kB/s | \
peers: #{st.num_peers})"
  setTimeout main, 2500

Create torrent

lt = require "../build/Release/libtorrent"

fs = new lt.file_storage()
lt.add_files fs, "./src"
ct = new lt.create_torrent(fs)
lt.set_piece_hashes ct, "."
t = lt.bencode ct.generate()
console.log t
npm loves you