A collection of personal and professional projects

Halite BitTorrent Client

Halite (named after the mineral) is a C++ BitTorrent client based on the excellent libtorrent library developed by Arvid Norberg. The program also relies heavily on the Boost libraries.

The current version is v0.4.0.4 revision 1330 released on the 20th of December 2015. GitHub is now considered the primary source of file releases. I will maintain SourceForge as a mirror for the time being.

Key Features

While not a heavyweight in the bells & whistles category, Halite is a functional BitTorrent client. So far its list of features include:

  • File selection and/or file priority specifications.
  • Managed torrent queue system.
  • Disk cache support.
  • Magnet URI support.
  • Trackerless torrents (using the Mainline kademlia DHT protocol).
  • Supports Magnet URI torrents.
  • Super-seeding.
  • ĀµTorrent style multi-tracker announcing.
  • IP filtering with eMule style ipfilter.dat import.
  • Protocol Encryption support.
  • Translations of the UI into a number of languages through the help of volunteers. (if you wish to help with a translation then please do)
  • Minimize to tray with transfer rate summary.
  • Full Unicode support through UTF-8 and native Windows wide-char strings.
  • Login support where tracker requires it.
  • Ability to edit trackers specified in the torrent.
  • Ability to create torrent files.
  • Port randomisation and forwarding (UnPlug and Play or NAT-PMP).
  • Transfer rate and connection limits both global and per-torrent.
  • Shutdown scheduler.
  • Webseeds.