Start

Why eMule Qt?

eMule Qt is a free, open-source file sharing client for the ED2K and Kademlia networks, with a full Usenet engine built in — rebuilt from the ground up with Qt 6 and modern C++23.

Download

Cross-platform. Fully compatible with the existing eMule network. Based on the original eMule client.

Features

  • ED2K & Kademlia — Server-based and decentralized DHT networks for maximum source availability
  • Protocol Obfuscation — TCP/UDP encryption enabled by default
  • AICH Verification — Chunk-level integrity checks with automatic corruption recovery
  • Queue & Credit System — The proven eMule reward system for fair sharing
  • Built-in Web Server — Remote control from any browser via the classic web interface
  • Advanced Search — Expression-based queries across multiple networks
  • IRC Chat & Messages — Built-in IRC client and peer-to-peer messaging
  • IP Filtering — Dynamic blocklists with automatic updates
  • Media & Archive Preview — Preview video files and browse archives before download completes
  • Statistics — Real-time bandwidth graphs, connection metrics, and Kademlia visualization
  • Internationalization — 9 languages out of the box

 

Unique Features

Not found in the original eMule.

  • Usenet Downloads — A complete NNTP engine in the daemon: up to 16 providers on a priority and failover ladder, TLS, allowance tracking, PAR2 repair, and unpacking that finishes as the download does
  • Indexer Search — newznab indexers queried in parallel from the same Search tab and de-duplicated, with the grab done daemon-side so the GUI never holds an API key or a download URL
  • Auto-Download Feeds — A saved indexer query or an RSS URL polled on a schedule, filtered by regex, size and age, and queued into the category you chose
  • Cross-Platform — One codebase running natively on Windows, macOS, and Linux; the original is MFC and Windows-only
  • Daemon/GUI Split — Headless emulecored + emuleqt GUI over an encrypted CBOR IPC link; run the core on a server or NAS and attach the GUI locally or remotely
  • IPv6 — Dual-stack across client-to-client, client-to-server, Kademlia, and eD2K links, so IPv6-only and CGNAT users can participate fully — additive and legacy-safe
  • HTTP Cache — When several peers want the same part, encrypt and upload it once, then hand each peer a URL and key; the cache server never sees plaintext
  • PCP & NAT-PMP Port Mapping — Three backends raced at startup — PCP, NAT-PMP, and UPnP IGD1/IGD2 with IPv6 pinholes — graded on whether the exact port was actually granted
  • REST API — A JSON /api/v1/* interface with API-key auth alongside the classic web UI, for scripts and dashboards
  • CLI Control — Drive a running daemon from the shell: --add-link, --add-nzb, --connect, --disconnect, --connect-kad
  • MCP Server for AI Assistants — A Model Context Protocol endpoint at /mcp on the web server’s port, so an assistant can search, queue and manage downloads through 51 tools that share the REST API’s validation and code; read-only switch, API-key auth, and an emuleqt-mcp stdio bridge for clients that only start a local program
  • Extended Source Exchange — Source exchange widened with each source’s server endpoint, user hash, and obfuscation options, negotiated per peer
  • Save/Load Sources — Each part file’s best sources are written to disk and re-injected on restart, so a download resumes at speed instead of rebuilding its source list
  • Country Flags — MorphXT-style flags next to every client, source, server, Kad contact, friend and news server, from a MaxMind GeoLite2 database the daemon keeps up to date
  • Fake-File Detector — A Confidence column in search results, indexer results and downloads that scores how likely a file is not what its name says — conflicting names, a program or archive named like a video, implausible media data, spam and fake ratings — with every reason in the tooltip; it warns, never hides or blocks
  • Upload Queue Persistence — The waiting list survives a restart with every peer’s earned wait time intact, so queued peers keep their position
  • Hardened Kademlia — Node reputation with one-node-per-IP enforcement, variance-based adaptive timeouts, and a public IP adopted only once several independent peers agree on it
  • Persistent Statistics — Graph history is collected in the core rather than the window, so traces survive a GUI restart and two GUIs on one daemon see the same picture
  • Modern Foundation — C++23 and Qt 6 throughout, human-readable YAML configuration with encrypted secrets, a cross-platform crash handler, and 150+ automated test executables

Read more about what makes eMule Qt different.
 

Roadmap

  • NAT Traversal — Many users sit behind NATs and firewalls that prevent incoming connections, limiting them to “Low ID” status and reduced source availability. We plan to implement NAT traversal based on the work by DavidXanatos.
  • QUIC Transport — We are exploring QUIC (the transport protocol behind HTTP/3) as an alternative to TCP for peer connections. QUIC offers built-in encryption, multiplexed streams without head-of-line blocking, faster connection establishment (0-RTT), and better performance on lossy networks. It also traverses NATs more gracefully than TCP since it runs over UDP. This will allow previous “Low ID” clients to connect with each other seamlessly without relay/buddy.

 

Contribute

Visit our GitHub Repository.

.:Latest News