MJTC is a high-performance BitTorrent client for Windows built around an in-house torrent engine and a dense, real-time monitoring interface.
Rather than hiding protocol activity behind a single progress bar, MJTC exposes torrent, peer, piece, transport, verification, DHT, GeoIP, and transfer state directly in the UI.
Performance · Visibility · Control
Download the latest stable binary from Releases:
MJTC-v1-win-x64.exe
MJTC v1 is published as a self-contained, single-file Windows x64 executable. A separate .NET runtime installation is not required.
Each stable release also includes SHA256SUMS.txt so the downloaded executable can be verified before running it.
Get-FileHash .\MJTC-v1-win-x64.exe -Algorithm SHA256Compare the result with the value in SHA256SUMS.txt from the same release.
- Custom BitTorrent engine developed specifically for MJTC
.torrentand magnet-link support- BitTorrent v1, v2, and hybrid torrent support
- TCP and µTP operating concurrently
- DHT, Peer Exchange, Local Peer Discovery, and HTTP/UDP trackers
- Web-seed engine support (included in v1, not yet surfaced as a desktop feature)
- Protocol Encryption / Message Stream Encryption support
- High-throughput piece scheduling and endgame handling
- Selective file downloading and file-level priorities
- Built-in torrent verification and force-check workflows
- Detailed torrent, peer, and file progress visualization
- Live piece maps and temporary purple new-progress overlays
- Rich peer telemetry with client/version identification
- Configurable Peer ID profiles using recognized client signatures
- Integrated GeoIP city/country lookup and vector country/subdivision flags
- Global and per-torrent bandwidth controls
- Persistent torrent/session state and historical transfer statistics
- Transfer graphs and configurable refresh cadence
- System-tray integration and fast restore
- Optimized single-file distribution with embedded runtime assets
- Operating system: Windows x64
- Runtime: Included in the executable
- Framework target: .NET 10 / WPF
- Network: Internet access and permission through the local firewall
MJTC stores its application state under:
%LOCALAPPDATA%\MJTC
The application organizes persistent data into subdirectories for state, network identity, statistics, logs, cache, lists, downloads, and other runtime data.
MJTC is portable and does not require a traditional installer.
- Download
MJTC-v1-win-x64.exefrom the latest GitHub release. - Optionally verify its SHA-256 checksum against
SHA256SUMS.txt. - Place the executable wherever you want to keep it.
- Start MJTC.
- If Windows Firewall asks for network permission, allow the network access appropriate for your environment.
If Windows displays a reputation or publisher warning, review the executable and release checksum before proceeding. Windows warnings do not by themselves indicate that the downloaded file differs from the release asset.
- Open MJTC.
- Use the torrent-add control or open a
.torrentfile associated with MJTC. - Choose the destination and file selection as required.
- Start the torrent.
MJTC parses the torrent metadata, initializes the selected files, restores reusable local data when applicable, and begins peer discovery through the mechanisms permitted by that torrent.
- Copy a magnet URI.
- Open Add Magnet in MJTC.
- Paste the magnet and confirm.
- MJTC begins peer discovery and metadata acquisition.
Magnet support includes metadata exchange and file-selection parameters where supplied by the URI.
MJTC supports the normal torrent lifecycle together with lower-level controls not normally exposed by simple downloaders.
- Start
- Pause
- Resume
- Remove torrent
- Remove torrent and optionally remove payload data
- Force-check / verify local data
- Select or deselect individual files
- Change file priority
- Apply torrent-specific bandwidth limits
- Apply torrent-specific connection limits
- Inspect torrent details and piece state
- Export/copy torrent and magnet information where available
Paused torrents are removed from active transfer scheduling rather than merely being visually marked as paused.
MJTC does not wrap a third-party torrent engine. The application contains its own BitTorrent implementation, including:
- Bencoding parsing and writing
- Torrent metainfo parsing
- Peer handshakes and peer-wire messages
- Choking / unchoking
- Piece and block requests
- Piece scheduling
- Piece verification
- Upload scheduling
- Endgame behavior
- Tracker communication
- DHT
- Peer Exchange
- Local Peer Discovery
- Web seeds (engine implementation included; not yet surfaced in the v1 desktop workflow)
- Magnet metadata acquisition
- TCP transport
- µTP transport
- Protocol encryption / obfuscation
- NAT traversal / hole punching
- Torrent persistence and resume state
Keeping the engine inside MJTC allows networking and scheduling behavior to be tuned together with the application's UI telemetry and persistence model.
MJTC can discover peers through multiple independent sources:
- HTTP trackers
- HTTPS trackers
- UDP trackers
- DHT
- Peer Exchange (
ut_pex) - Local Peer Discovery when enabled
- Magnet-provided peers
- Hole-punch/rendezvous paths when negotiated and applicable
Private torrents are treated specially: discovery mechanisms that must not be used for private swarms are disabled for those torrents.
MJTC supports TCP and µTP concurrently.
The transport controls are designed to influence the proportion of connections without unnecessarily starving one transport. The engine can replenish connections from trackers, DHT, and PEX as peer availability changes.
µTP implements the BitTorrent µTP transport, including SACK handling and congestion/retransmission behavior.
MJTC supports BitTorrent Message Stream Encryption / Protocol Encryption (MSE/PE) for peer connections.
Modes can permit, require, or refuse encrypted peer handshakes depending on configuration.
MSE/PE should be understood as protocol obfuscation and compatibility functionality, not as end-to-end anonymity or a replacement for transport security/privacy tools.
The transfer engine contains an availability-aware piece and block scheduler with support for:
- Per-peer request windows
- Adaptive request pipelines
- Request timeout recovery
- Pipeline refill
- Duplicate-request protection
- Unique-block-first behavior
- Stale-request recovery
- Selective-download awareness
- Endgame scheduling
- Bounded rescue duplicates
- Cancellation of unnecessary duplicate requests
Near completion, MJTC attempts to keep healthy peer pipelines productive without turning endgame into uncontrolled duplicate-request traffic.
MJTC verifies torrent payload against the hashes defined by the torrent format rather than assuming that bytes present on disk are valid.
Verification support includes:
- Piece hash verification
- File-aware force checking
- Per-piece verification state
- Verification progress visualization
- Recovery after files are deleted or externally modified
- Synchronization between verification and active downloading
- Resume-state integration
- v1 SHA-1 piece verification
- v2 Merkle/SHA-256 verification
- Merkle torrent verification where applicable
If previously downloaded files are manually removed, MJTC can re-evaluate local piece ownership and download the missing data again.
The Files view exposes per-file state inside each torrent.
Depending on the torrent format and state, MJTC tracks:
- File path
- File size
- Selection state
- Priority
- Completion
- Piece distribution
- Verification state
- Newly downloaded progress
Magnet file-index selection is supported when provided by the magnet URI.
MJTC uses detailed progress visualization across the Torrents, Peers, and Files views.
The UI can represent:
- Overall completion
- Piece ownership
- Selected-file completion
- Missing pieces
- Active transfer state
- Availability
- Verification state
- Newly acquired data
- Green — active/downloading state
- Teal — completed / fully available state
- Purple — newly received progress
- Gray — paused / inactive state
- Red — blocked or error-related state where applicable
- Orange — warning/intermediate state where applicable
New progress is temporarily highlighted with a purple overlay so recent acquisition can be distinguished from older completed data.
MJTC exposes live and historical information for peers, including:
- IP address
- Port
- Country flag
- Client identity
- Client version
- TCP / µTP transport
- Encryption state where available
- Download rate
- Upload rate
- Downloaded amount
- Uploaded amount
- Piece availability
- Completion percentage
- Connection state
- Blocked state
- First seen / last seen information
- Session information
- Geographic information
Disconnected, blocked, and previously observed peers can remain visible according to the application's history/retention behavior instead of disappearing immediately.
MJTC implements BEP 20 peer-ID recognition and maintains a broad catalog of known client signatures.
Recognized families include, among others:
- qBittorrent
- µTorrent
- BitTorrent
- Transmission
- BiglyBT / Vuze / Azureus
- Tixati
- MonoTorrent
- libtorrent
- libTorrent (Rakshasa)
- BitWombat
- Folx
- Xunlei
- Free Download Manager
- WebTorrent
- LibreTorrent
- PicoTorrent
- Gopeed
- aria2
- many additional historical and current BitTorrent implementations
The Peer ID & Port control can generate a fresh 20-byte Peer ID using registered client profiles and their version/signature conventions. Unknown or opaque peer IDs are not force-mapped to a known client and may be displayed as randomized/unavailable instead.
MJTC integrates geographic peer information directly into the peer interface.
Features include:
- Country detection
- City lookup when available
- Country/subdivision flag rendering
- Peer-detail geographic information
- Embedded GeoIP payload
- Indexed vector flag resource pack
The runtime does not require a loose GeoIP database or a directory full of SVG files beside the executable.
This product includes GeoLite Data created by MaxMind, available from MaxMind.
MJTC contains an integrated BitTorrent DHT implementation with IPv4/IPv6-aware behavior.
The engine includes support for routing-table maintenance, bootstrap, peer discovery, external-address evidence, DHT security extensions, read-only behavior, mutable/immutable items, and other DHT extensions listed in the BEP table below.
The UI exposes DHT state such as running status, buckets, and known nodes.
Tracker support includes:
- HTTP/HTTPS announce
- UDP announce
- Compact peer lists
- IPv4 and IPv6 peers
- Multi-tracker tiers
- Tracker scrape
- UDP tracker extensions
- DNS tracker preference handling
- Retry metadata where provided
MJTC v1 includes BEP 17/BEP 19 web-seed parsing and transfer code in the engine, but web seeds are not yet surfaced as a normal desktop feature/control. They are therefore treated as an engine-only capability in the BEP table below rather than an advertised v1 workflow.
MJTC provides both global and per-torrent controls.
These include:
- Global download limit
- Global upload limit
- Per-torrent download limit
- Per-torrent upload limit
- Per-torrent connection limits
- TCP / µTP preference
- Connection replenishment behavior
- Encryption policy
- DHT/PEX/LSD-related controls
- Advanced networking limits
MJTC keeps torrent/session state across application restarts.
Persisted data can include:
- Torrent metadata/repository data
- Piece completion
- File selection
- Running/paused state
- Resume data
- Peer-related history where applicable
- Verification state
- Network identity/port settings
- Historical statistics
- UI/window state
Performance-sensitive state uses compact binary formats where appropriate, with legacy migration paths retained where needed.
MJTC maintains session and historical statistics, including:
- Torrents downloaded
- Data downloaded
- Data uploaded
- Sharing percentage
- DHT status
- DHT buckets
- DHT nodes
The Sharing value is expressed as a percentage and is not capped at 100%.
Sharing = Uploaded / Downloaded × 100
MJTC also provides global and per-torrent transfer graphs. Per-torrent graph history can continue accumulating while a different torrent is selected.
The engine contains file-streaming support for consuming selected torrent files while data is being acquired, subject to piece availability and the torrent/file state.
Streaming-aware scheduling can prioritize the pieces needed by the active stream without disabling normal torrent integrity checks.
MJTC includes Windows desktop integration such as:
- System-tray operation
- Fast hide/restore behavior
- Window-state persistence
.torrent/magnet startup argument handling- Single-instance forwarding
- Custom multi-resolution application icon
MJTC v1 contains a broad set of BitTorrent protocol implementations. The table distinguishes between capabilities used by the current application and code that is present in the engine but is not yet surfaced by the v1 desktop workflow.
Status legend
- Active — used by normal MJTC v1 operation or directly exposed by the application.
- Automatic — used internally when the protocol/torrent requires it; no dedicated control is necessary.
— implementation is included in the binary but is not yet used/surfaced as a normal MJTC v1 desktop feature. These rows are intentionally visually muted.
Official BitTorrent Enhancement Proposal index: bittorrent.org/beps
MJTC does not require an account or a hosted MJTC service to operate. Application state is stored locally on the Windows machine.
BitTorrent itself is a peer-to-peer protocol. When participating in a swarm, your network address can be visible to peers, trackers, DHT nodes, web seeds, and other infrastructure involved in that torrent. MJTC is not an anonymity tool.
Protocol Encryption / MSE can obfuscate BitTorrent traffic but does not make peer-to-peer activity anonymous.
Use MJTC only for data you are legally authorized to download, distribute, or share.
- Verify that you downloaded the executable from the repository's official Releases page.
- Verify the SHA-256 checksum.
- Check whether Windows Security or another endpoint-security product quarantined the file.
- Review
%LOCALAPPDATA%\MJTC\Logs\crash.logif a crash log was generated.
- Check the torrent's seed/peer availability.
- Check global and per-torrent bandwidth limits.
- Check the per-torrent connection limit.
- Verify that Windows Firewall permits MJTC's network traffic.
- Check tracker and DHT state.
- Review whether TCP/µTP preferences or encryption settings are overly restrictive.
- Confirm that the magnet has a valid info hash.
- Ensure DHT/trackers are available for that torrent.
- Wait for a peer supporting metadata exchange.
- Private torrents depend on their permitted tracker/peer-discovery paths.
If payload files were removed or modified outside MJTC, run a force check. The client will re-evaluate the local data and reacquire missing pieces as needed.
Allow MJTC through Windows Firewall as appropriate. NAT traversal, UPnP/NAT-PMP, and peer hole punching can help where supported, but successful incoming connectivity still depends on the router, ISP, firewall, and remote peer.
Use the repository's Issues section for reproducible defects and feature requests.
For bug reports, include as much of the following as possible:
- MJTC version (for example
v1) - Windows version/build
- Whether the torrent was
.torrentor magnet-based - Torrent type when known: v1, v2, hybrid, private, web-seeded, etc.
- Exact steps to reproduce the issue
- Expected behavior
- Actual behavior
- Relevant screenshots
- Relevant MJTC settings
- Relevant crash/log information from
%LOCALAPPDATA%\MJTC\Logs
Do not post private tracker passkeys, authentication tokens, personal paths, or other secrets in public issues.
For performance reports, also include approximate torrent size, piece count, peer count, connection limit, TCP/µTP preference, and observed transfer rate.
Public MJTC versions use compact version labels without redundant zero components:
v1
v1.1
v1.1.1
v1.1.2
v1.2
v2
Pre-release labels may use a descriptive suffix, for example:
v1-beta
The release asset follows the same public version:
MJTC-v1-win-x64.exe
MJTC-v1.1-win-x64.exe
MJTC-v1.1.1-win-x64.exe
MJTC is currently distributed as a compiled Windows binary. Application source code is not included with the binary release.
The executable is self-contained and carries the runtime resources needed by the application, including optimized embedded assets used by the UI, GeoIP, and flag system.
MJTC is provided for legitimate peer-to-peer file transfer. Users are responsible for ensuring that they have permission to download and distribute the content they use with the application.
Third-party data and technologies remain subject to their respective terms and licenses.
This product includes GeoLite Data created by MaxMind, available from https://www.maxmind.com/.
MJTC is designed as both a practical torrent client and an observable BitTorrent implementation.
Development priorities include:
Throughput · Protocol Correctness · Reliability · Persistence · UI Accuracy · Large-Swarm Performance · Transfer Integrity · Observability