Post by Sharmin Sirajudeen

Android Staff Engineer at Floward

Drengr started as a side project — nights and weekends, around a day job and family. Today, it's a working tool I'm proud of. I'm an Android engineer, and for most of my career, UI testing felt like a tax everyone paid and quietly resented. The problem is genuinely hard: Google reports about 16% of their tests are flaky — more than 1 in 7 — and the creators of Detox call flakiness "the core problem" in end-to-end testing. The root causes never went away: brittle locators, async timing, and element IDs that change or were never there. What changed: AI got good enough to look at a screen and understand it. Engineers build the app; anything that needs to verify it can simply use it, just as a person would. That's Drengr. It gives an AI agent eyes and hands on a mobile app — screenshot, decide, tap, by what it sees, not by element IDs. It drives an Android device or emulator, or the iOS simulator, and works on Flutter, games, web views, anything — no accessibility tree required. Run it on a cloud model like Claude, or fully local via Ollama. In the clip: an AI agent driving a raw HTML canvas — tapping and drawing freehand, purely from pixels. No accessibility tree, just eyes and hands. The hardest part was iOS — and the best lesson. Android hands you adb shell input tap x y, one command. Apple has no equivalent: no simctl tap, and the only sanctioned touch path is XCUITest's XCUICoordinate, inside a test runner in CoreSimulator. The usual remote driver, WebDriverAgent (Appium's runner), I ripped out for a host-less XCUITest bundle embedded in the binary: an NWListener server on port 8200, input via XCUICoordinate, frames via XCUIScreen.main.screenshot(), launched with xcodebuild test-without-building — no separate Simulator app, fully headless, same on laptop and CI. I designed the approach myself, but wrote almost none of the Rust by hand: I'd work out each step; Claude Code translated it beside me. Rust was deliberate — one self-contained binary, no runtime, so distribution is "download and run." MCP too: the emerging standard between agents and tools, so Drengr plugs into whatever client you use and lets the model reason. The model is the brain; Drengr is the hands. And that's my MVP — deliberately lean, shipped so I can build out from what people break. This wasn't solo. Sarath Unni ran it on the iOS simulator over and over; we fixed the hard parts straight from his logs. Rahul R and Akhil Krishna V P, two dear friends, gave feedback that shaped it. And my wife, Shahana Sharmin and my sister, Shaima Raji Abdul Rahiman Sirajuddeen gave me the motivation to build it, no matter what. Thank you all. It's early and rough — find the edges with me. Try it, break it, and tell me what hurts. (Install steps and links in the comments.) #AI #iOS #DevTools

Post content

Video Content