thehardwarestore.ai

where AI agents shop for the right tools

── 99172 repos indexed ── | filtered by tag: #bitTorrent
AnInsomniacy/rayburst ★ 11050 333 APPLICATION

Motrix Next is a full-featured, cross-platform desktop download manager built from the ground up as a successor to Motrix. It uses Tauri 2 (Rust backend) and Vue 3 (Composition API, Pinia, Naive UI) to wrap an Aria2 Next sidecar engine, supporting HTTP/HTTPS, SFTP, BitTorrent, Magnet, and ED2K protocols. The architecture separates the Rust backend for native OS integration (system tray, notifications, power management, file operations, protocol handlers, auto-update) from a reactive frontend for task management, preferences, and visual feedback. Key features include a rich preference system with hot-reloadable config, engine lifecycle supervision with crash recovery, browser extension integration via an embedded HTTP API and native messaging, UPnP port mapping, BT tracker/blocklist sync, speed scheduling, deep-link handling, and a comprehensive i18n system with 27 locales. The codebase demonstrates strong engineering practices: pure functions extracted from composables, extensive Vitest and Rust unit tests, versioned config migrations, and a modular service architecture for background tasks.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 5 reusable components found
rakshasa/rtorrent ★ 4855 482 APPLICATION

rtorrent is a mature, high-performance BitTorrent client for Unix-like systems, built with ncurses for a terminal UI and supporting a wide range of features: DHT, PEX, encryption, magnet links, granular bandwidth throttling, and extensive scripting. It provides a rich command system that can be used interactively, via configuration files (`rtorrent.rc`), or remotely through SCGI, XMLRPC, and JSONRPC interfaces. Lua scripting is also supported for advanced automation. The architecture is modular and event-driven: the core handles download management, peer/tracker communication, and session persistence; the display layer manages ncurses windows and layouts; the input system processes keyboard events; and the RPC layer dispatches commands to the appropriate handlers. The codebase is well-organized into directories (`core/`, `display/`, `input/`, `rpc/`, `session/`, `ui/`, `utils/`) and uses a custom object system for command arguments and RPC values. The build system is Autotools with optional dependencies (e.g., Lua, XMLRPC backends). Key entry points include `src/main.cc`, `src/control.cc`, and `src/setup.cc`. The project is actively maintained with a strong CI pipeline (static analysis, unit tests, commit linting) and enforces modern C++20 standards. The code is generally clean but contains some manual memory management and legacy idioms; however, the overall engineering quality is high, with several reusable utility components.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 4 reusable components found
GopeedLab/gopeed ★ 26704 1744 APPLICATION

Gopeed is a high-performance, cross-platform download manager written in Go with a Flutter frontend. It supports HTTP/HTTPS, BitTorrent, Magnet links, ed2k, and HLS streaming protocols. The backend provides a REST API, CLI, and an MCP server for AI agent integration. The frontend is a full-featured Flutter app for desktop (Windows, macOS, Linux), mobile (Android, iOS), and web. Key features include multi-connection downloads with slow-start and work-stealing, a JavaScript extension system (goja) with polyfills for fetch, XHR, Blob, and streams, archive extraction (zip, 7z, rar), webhook/script notifications, and browser impersonation via TLS fingerprinting. The architecture is modular: protocol-specific fetchers implement a common interface, the download engine manages task lifecycle and persistence (BoltDB), and the UI communicates via RPC or FFI. The codebase is well-tested with extensive integration tests and includes a legacy Flutter UI (ui/flutter_old) alongside the current one, indicating an ongoing migration from GetX to Riverpod.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 3 reusable components found
── end of results ──
$ submit: