DJduchan jointapflow.hashnode.dev·Jun 17 · 5 min readThe DX we wanted for tapflow setup: a host-ready Mac in one commandtapflow streams iOS simulators and Android emulators into a browser, so a whole team can test an app without installing anything. The simulators run on a Mac that hosts the tapflow agent, and that Mac10
DJduchan jointapflow.hashnode.dev·Jun 10 · 8 min readWe switched simulator streaming to H.264 and it felt worse. Here's how we fixed the latency.In an earlier post I described how tapflow streams iOS simulators to the browser: pull frames off the simulator's IOSurface, JPEG-encode them on the Mac, push them over WebSocket at ~30fps. JPEG has o10
DJduchan jointapflow.hashnode.dev·May 31 · 7 min readGiving an LLM Eyes and Hands on a Mobile SimulatorMobile QA has a scaling problem. Unit tests and API tests run in CI automatically. But the thing that actually matters to most users — does tapping this button do the right thing, does this screen loo20
DJduchan jointapflow.hashnode.dev·May 29 · 5 min readtapflow v0.3.x: Deeplinks, Keyboard Shortcuts, Screenshot API, and an Experimental MCP Servertapflow started as a simple idea: stream iOS simulators and Android emulators to the browser so anyone on the team can do mobile QA without touching Xcode or Android Studio. v0.2.x got the core workin20
DJduchan jointapflow.hashnode.dev·May 28 · 5 min readYour whole team can now run mobile QA from the browser. Here's how we built it.If you work on a mobile product, you've probably seen this. Physical devices are never enough. Covering every OS version is even harder — iOS doesn't support downgrading, so maintaining a range of ver20