node-libtorrent provides native bindings to libtorrent rastebar as a Node.js addon.
this is a fork of https://github.com/fanatid/node-libtorrent
This library supports version 1.0+
Getting started
Execute in command line:
$ npm install node-libtorrent-mt
or copy repository and build bindings manually
$ git clone git://github.com/martintrojer/node-libtorrent.git
$ cd node-libtorrent
$ npm install -g node-gyp
$ node-gyp configure
$ node-gyp build
Examples
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 main()
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