About
Native Android first. React Native core second. Now back to native.
I'm Hardik Srivastava, oddlyspaced in most places. 11 years in mobile, most of it in native Android before I touched React Native. Then deep enough into React Native to land commits in its core and write Swift and Kotlin Turbo Modules and native code for production.
A migration needs someone who can read both sides: what the JavaScript layer was quietly doing for you, and what the platform underneath expects instead.
How I got here
- 1The modding years
Android, from underneath
Custom ROMs, Magisk modules, Smali patching. I learned the platform by taking it apart before I ever shipped anything on it. That habit never left — there are still C and reverse-engineering repos on my GitHub next to the app code.
- 2Going professional
Kotlin, at consumer scale
Native Android as a job: Kotlin, Java, the real constraints of apps people actually use. Twenty-two of my public repos are Kotlin. This is where I learned that the hard part of mobile is never the UI — it's the platform underneath it.
- 3Crossing over
React Native, without giving up native
Moved to React Native for product velocity and immediately hit its ceiling. So I went through it rather than around it. Three of my commits are in React Native core — two of them Android accessibility features, because the platform gaps that bother me are the ones users feel. I also build Turbo Modules, and gave a talk on putting Headout's bookings into iOS Spotlight from a Swift module.
- 4Now
Back to native, with agents
I built an MCP server so an LLM could drive a real Android device, then watched agents write plausible screens and get the platform wrong. Moving apps back to native with agents only works with gates at every step. That is what Nativestarter sells.
Public work you can check
- MCP serverultimate-android-mcpLets an LLM automate a connected Android device or emulator — taps, input, screenshots, logs. Built before agent tooling for mobile was a category.
- Android appBhai Kya Kar Raha Hai TuA screen-time app that interrupts you with an Ashneer Grover meme. My most-starred project, and it got picked up by the press.
- Reverse engineeringzomato-notificationReverse-engineered Zomato's app to build an iOS-style live Activity Indicator for order tracking on Android. Wrote up how.
- Talk + articleMaking React Native more nativeA Swift Turbo Module that indexes Headout bookings into iOS Spotlight, with previews. The talk demos are open source.
- React Native libraryreact-native-modern-blur-viewA lightweight, Figma-inspired blur view for React Native. Published to npm.
- Hardwarelib-beaconDriver work for the LEDs on the back of the Nothing Phone (1), written from the aw210xx datasheet.
- Reverse engineeringrkcuReverse-engineered the USB configuration protocol for the Royal Kludge RK61 keyboard so it could be configured from Linux.
- Bare metalrpi4-hello-worldA bare-metal Raspberry Pi 4 OS in C that prints over UART. No kernel, no libc.
Ask whether you should migrate.
I answer my own email. If staying on React Native is right for you, I will say so.