DomingoTorrent is an open-source BitTorrent client for Windows built with Python, PyQt6 and libtorrent.
Current status: Beta. The published beta focuses on the core torrent client. Donation/VPN modules are not distributed in this branch.
.torrentfiles and magnet links- Download and upload management
- Pause, resume and recheck
- Global and per-torrent speed limits
- Proxy configuration
- IP filtering
- Configurable torrent/network settings
- PyQt6 desktop interface
- libtorrent-powered BitTorrent engine
- Local state persistence
- Test suite and automated CI
- Windows 10/11 recommended
- Python 3.12
- Dependencies listed in
requirements.txt
For development, install the additional packages from requirements-dev.txt.
Clone the repository, create a Python 3.12 virtual environment, and install dependencies:
py -3.12 -m venv .venv
.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -r requirements.txt
python -m pip install -r requirements-dev.txtRun the application:
python run.pyRun the test suite:
python -m pytest -qCompile-check the package:
python -m compileall -q domingotorrentThe repository includes the Windows build script:
build.batThe generated application is placed under dist\DomingoTorrent\.
Always test the generated executable on a clean Windows environment before publishing a release.
domingotorrent/
├── engine/ # BitTorrent engine and network logic
├── models/ # Application/domain models
├── ui/ # PyQt6 interface
├── resources/ # UI/application resources
└── ...
tests/ # Automated tests
.github/ # GitHub templates and workflows
Runtime state and local application data are intentionally excluded from Git. Do not commit personal torrent data, downloaded files, credentials, proxy passwords, API tokens, or other secrets.
Please do not report security vulnerabilities through public GitHub issues.
See SECURITY.md for the project's security reporting policy.
Pull requests and focused bug reports are welcome.
Before opening a pull request:
- Run the test suite.
- Run the compile check.
- Keep changes focused.
- Update documentation when behavior changes.
- Never commit secrets or personal runtime data.
See CONTRIBUTING.md.
Versioned releases are published through GitHub Releases.
The project is currently in beta, so release builds may contain known limitations. Check the release notes before upgrading.
See CHANGELOG.md and RELEASE_CHECKLIST.md.
The roadmap will evolve during the beta. Planned areas include:
- improved Windows packaging
- automated release builds
- broader integration testing
- documentation improvements
- additional BitTorrent/network features
DomingoTorrent is distributed under the GNU General Public License v3.0. See LICENSE.