Note: OpenSeedbox is intended only for developers at this time! It does not have an install process that a typical user will find easy to follow. By all means give it a go if you're keen though
Overview
OpenSeedbox is essentially a BitTorrent seedbox platform. It was created to solve the following problems while downloading torrents:
- Multiple Users - Keep everyones torrents separate and private from everyone elses
- File downloads from within the Web UI with full support for download accelerators and resume - Other clients (transmission-daemon in particular) provide no ability to download the actual files via their Web UI and instead rely on someone installing an additional webserver
- On-The-Fly ZIP downloads from within the UI with full support for download accelerators and resume - This is achieved by NGINX mod_zip, an amazing piece of software. Zip downloads need to be on the fly to save taking up excess space (and also initial zip time), and making them resumable makes them just as fast as normal downloads. The ZIP feature is useful for when there are a lot of individual files in the torrent, for example music torrents
- Security - If setup correctly, everything runs over HTTPS and files are downloaded to encrypted partitions. Also, peer blocklists are automatically set up. This means that your ISP and Webhost cannot track what you or your users are downloading (this of course does not stop people monitoring the tracker)
- Backend nodes act like one big node - The backend nodes should act like one huge node, allowing efficient use of resources and flexibility in where torrents are placed.
Architecture
OpenSeedbox has a frontend node (called the client) that farms out requests to as many backend nodes as you like (called servers). The client holds all the state and the backend nodes are just dumb torrent downloading machines.
OpenSeedbox is based on the following open source projects:
- OpenJDK 1.6 / Play Framework 1.2.5 for the server side code
- Nginx for the frontend webserver (mod_zip handles zip file downloads)
- transmission-daemon for the actual torrent client (although adding other clients is as simple as implementing an interface)
- Twitter Bootstrap/JQuery for the frontend UI code
Installation
Installation is covered in the README file here.
Screenshots
License
OpenSeedbox is licensed under the GNU General Public License v3. I originally created it for my flatemates and myself to use, but I decided to release it as open source because I thought that other people might benefit from it too.