Skip to content
Ravi Chaudhary

Real-time · Infrastructure

Offline Mode for Real Devices

Lets testers switch off the network on real iPhones and Android phones to see how their app behaves offline.

Role
Design & build, end to end
Company
TestMu AI
Year
2026
Layers
Interface, APIs, Services, Data, Infrastructure, Devices & OS
Stack
WebRTCNginxLuaRedisNode.jsReact
E2EStream, relay, UI and API
iOS + AndroidReal hardware, not simulators

Context

Mobile apps often break when the network drops. Offline mode lets customers testing on our real devices in the cloud reproduce that on actual hardware.

I designed and shipped all of it: streaming from the physical device, the signaling layer, the session UI and the API that turns offline mode on.

How it works

signalroutesignalgo offlinenetwork stateReal deviceiOS · AndroidSignaling relayNginx · LuaRedissession routingSession UItester’s browserRuntime APIoffline mode
  • Real deviceSession UI

Step 1 / 4

  1. The phone’s screen and input travel over WebRTC, carried over USB from the physical device.

  2. A signaling relay on Nginx and Lua sets up each WebRTC session. Redis decides where it goes.

  3. An API takes the device offline in the middle of a session, so customers can test offline behaviour on a real phone.

  4. The session UI shows the live device and the network controls in one place.

Outcome

  • Customers can test offline behaviour on real iOS and Android phones, not just simulators.
  • I worked on every layer of it: device, relay, data, API and UI.

Next case study

Crypto Trading Interface

The trading screen for LCX’s crypto exchange, built from scratch. Over 50,000 traders used it at peak.