A lightweight GTK-based BitTorrent client written in Python using libtorrent. Streamline provides a simple graphical interface for downloading torrents directly from magnet links while displaying live download statistics.
- Clean GTK3 interface
- Paste and download magnet links
- Automatic metadata retrieval
- Live download progress
- Download speed monitor
- Upload speed monitor
- ETA calculation
- Peer count display
- Upload statistics
- Seeding after completion
- Supports opening magnet links from the command line
- Python 3
- GTK 3
- PyGObject
- libtorrent (Python bindings)
sudo apt install python3-gi gir1.2-gtk-3.0 python3-libtorrentClone the repository:
git clone https://github.com/yourusername/streamline.git
cd streamlineRun:
python3 streamline.pypython3 streamline.pyPaste a magnet link into the text box and click Open Link.
python3 streamline.py "magnet:?xt=urn:btih:..."The download will start automatically.
By default torrents are saved to:
/mnt/home/data/torrent
You can change the download directory by editing:
params.save_path = "/mnt/home/data/torrent"streamline/
├── streamline.py
├── README.md
└── LICENSE
- Python
- GTK3 (PyGObject)
- libtorrent
- ✅ Magnet URI support
- ✅ Metadata fetching
- ✅ Progress bar
- ✅ Download statistics
- ✅ Upload statistics
- ✅ ETA estimation
- ✅ Peer counter
- ✅ Automatic seeding
- ✅ Command-line magnet support
This project is licensed under the MIT License.
Contributions, bug reports, and feature requests are welcome.
- Fork the repository.
- Create a feature branch.
- Commit your changes.
- Open a Pull Request.
- libtorrent
- GTK
- PyGObject
