A torrent client that works on your iPhone
I wanted to download a film to my iPad on a train and watch it. That turned out to be surprisingly hard.
Every torrent app worth using is desktop software. On iOS there's essentially nothing — Apple doesn't allow it, so the App Store options are either gone, crippled, or asking for a subscription to a "cloud downloader" that keeps a copy of everything you touch on somebody else's server.
So I built one that just runs in a browser tab. No install, no account, no App Store.
It's at wasmtorrent.pages.dev if you'd rather poke at it than read about it.
What it does
Open the page, paste a magnet link, and it downloads. The whole client is compiled to WebAssembly and runs inside your browser — there's no server of mine involved at any point.
A few things that make it actually usable rather than a demo:
- Stream while it downloads. You can start watching before it finishes, and seek around — it fetches the parts it needs. Files whose codecs your browser refuses fall back to a software player.
- Save to your device. On iPhone and iPad that means straight into the Files app, in Downloads.
- Install it to your home screen. It's a progressive web app, so it gets an icon and its own window, and the interface works offline.
- It tells you when downloads finish, with a deliberately vague message — "one of your downloads has finished", never the name. Notifications land on lock screens where anyone can read them.
The awkward part, explained honestly
Here's the thing nobody tells you about torrents in a browser: a browser can only make WebRTC connections.
Ordinary torrents use TCP peers. A web page physically cannot dial those — it's not a limitation of my code, it's what a browser is. So most magnet links you find will sit at 0% forever in any in-browser client, including this one. That's why they all feel broken.
The fix is a small companion app called the bridge. You run it on a computer you already leave on — a Mac, a PC, a Linux box, a home server. It joins the swarm properly, the way a normal torrent client does, and then hands the data to your browser over your own network.
Setup is: install it, and scan the QR code it shows you. Your phone talks to your computer and nothing else.
Why there's no account
There's no sign-up because there's nothing to sign up to. No backend, no database, no analytics on what you add. I don't have a server that could keep a history of your downloads, which is a stronger guarantee than a privacy policy promising not to.
When you use the bridge, your own machine sees what it fetches — that's unavoidable, since it's the thing doing the downloading. But it's your machine.
Two honest caveats: torrents are public by nature, so peers see your IP (or your bridge's), and a VPN is still worth having. And finding peers goes through public trackers, which see what you're looking for. Nothing about running in a browser changes either of those.
Try it
wasmtorrent.pages.dev — free, nothing to install to try it.
If you only want to see whether it works, open it on a phone and add a magnet link. If it says Needs bridge, that's the WebRTC problem above, and the footer has the bridge download for macOS, Windows and Linux.
It's a personal project and rough in places — the certificate step when pairing an iPhone is clumsier than I'd like. If you try it and something breaks, I'd genuinely rather hear that than a compliment.
Top comments (0)