$ under-the-hood
For the technical crowd: why a phone is a genuinely good server
If you've self-hosted before, here's the engineering rationale - and why these choices make a spare phone a legitimately useful, low-friction host rather than a toy.
🔌 It's already a perfect server box
An ARM SoC sipping ~2-4 W, silent, with a built-in battery UPS and LTE failover. A Raspberry Pi 4 with a UPS hat costs more and does less - and you already own the phone.
🧱 A real server, two ways
PhoneRig runs a genuine server on the phone, through one of two engines. Most phones get the Linux engine: a full Ubuntu userland via proot, no rooting and no custom ROM, with standard apt packages running unmodified. Where a phone's system blocks that, the native engine serves directly on Android instead. The app picks for you, and every supported phone gets a working server. Which engine will my phone use?
🌐 No networking nightmares
Cloudflare Tunnel means no port forwarding, no static IP, no NAT/CGNAT pain, free TLS. It works behind any router or carrier-grade NAT - exactly where a Pi at home struggles.
🔐 Credentials stay where they belong
The privileged Cloudflare token lives in a broker Worker, never on the phone. The device only ever receives its own scoped connector token. Per-install random passwords, surfaced in-app - no admin/admin on the public internet.
♻️ One site, cleanly switched
Presets (WordPress and Syncthing on any phone, Gitea and code-server with the Linux engine) are mutually exclusive and Caddy reloads in place - no zombie daemons, no leaked RAM. Switch WordPress → Gitea and the old one is actually gone.
🛡 Your data never leaves the device
Sites, files, repos and keys live only on the phone. No analytics, no ads, no telemetry in the app. The cloud touches your traffic only as a dumb, encrypted pipe.
In short: PhoneRig isn't pretending a phone is a datacenter. It's removing the three things that stop people from self-hosting at all - setup, networking, and cost - on hardware that would otherwise sit dead in a drawer.