An IPv4 eD2K/Kad client for Windows, Linux and macOS. Search, download and share from one headless daemon, with a browser console for everyday control and a REST API for automation.
Active beta. Dated nightly prereleases are the current public testing channel.
| ↓ Use eMuleBB Rust | ⌘ Develop with eMuleBB Rust |
|---|---|
| Download a nightly | Build and contribute |
| Get started | Connect to the API |
- What you can do
- Downloads and platforms
- Get started
- Use the API
- Develop and contribute
- Help and security
- License
- Search eD2K/Kad and manage downloads from the browser console.
- Share monitored folder trees and choose network and sharing settings.
- Automate client operations through an authenticated, documented REST API.
- Inspect transfer and log state, and identify packages by source revision and published checksums.
Choose the matching runnable package from the
nightly releases.
Verify it against that release's SHA256SUMS before launch. No Rust toolchain is
needed to use a prebuilt package.
| Platform | Architecture | Distribution |
|---|---|---|
| Windows | x64 / ARM64 | ZIP |
| Linux | x64 / ARM64 | DEB, AppImage, static-musl tar/zstd |
| macOS | Intel / Apple Silicon | DMG; unsigned and not notarized |
| Docker / OCI | Linux amd64 / arm64 | GHCR Ubuntu and Alpine images |
| Android developers | arm64-v8a / x86_64 | Experimental native CLI bundles; not an APK |
Container images are published at
ghcr.io/emulebb/emulebb-rust.
Use nightly or nightly-ubuntu for Ubuntu, and nightly-alpine for Alpine.
Versioned tags are available; pin a verified digest for a repeatable deployment.
There is no latest tag.
Native macOS package smoke runs on Intel and Apple Silicon. Android bundles have compile/ELF checks; device runtime, completed-file delivery, route discovery and VPN behavior remain unqualified. Linux musl bundles are separate from Android.
See downloads and platforms for requirements, installation, container mounts and the scope of package checks.
- Install or extract the package for your system. Keep the complete layout,
including the adjacent
webuidirectory when using an archive. - Run
emulebb-rust.exeon Windows,./emulebb-rustfrom a Linux archive, or the copied macOS app. On the first native launch without--profile, save the private API key printed once. GUI/container users can read it from the private profile bootstrap file. - Open http://127.0.0.1:4711/ and enter the key. Review network and sharing settings before starting transfers.
The default REST address is local control, not an offline-P2P guarantee: startup may fetch discovery inputs and start configured networking.
Profiles during beta: an incompatible database requires an entirely fresh profile. Keep the stopped old profile, payloads and matching binary intact for explicit rollback; automatic unfinished-transfer continuation is not promised.
The getting-started guide covers profile locations, discovery, search, downloads, sharing and troubleshooting.
All /api/v1 routes use the X-API-Key header. The daemon serves HTTP;
keep control on loopback or use a trusted TLS reverse proxy with restricted
access. Keep the key out of URLs, committed scripts and public logs.
Start with authenticated, read-only requests such as
GET /api/v1/capabilities and GET /api/v1/status.
The API guide
includes private-key prompts, request examples and response handling. The
OpenAPI contract
defines the routes and schemas. The beta API is still evolving; check the
contract for the version you use.
The contributor guide walks through prerequisites, managed workspace setup, source orientation and supported checks. See CONTRIBUTING.md for contribution details and the roadmap for current work.
Contributions can improve the client, browser console, integrations, tests or documentation. Coordinate an actionable issue before implementation.
- Troubleshooting: startup, listeners and logs.
- Bug reports: open an issue with the package version and sanitized reproduction steps.
- Vulnerabilities: follow the private security reporting policy.
Diagnostic bundles are private operator evidence and can contain API keys, paths, identifiers and logs. Never attach them unreviewed to a public report.
GPL-2.0-only. Dependencies retain their own licenses; see third-party notices.
