Skip to content

mobile · tech — OCT 7, 2026

Don't Use React Native

The case for building two separate apps.

The decisions you make up front can make your work a lot easier or a lot worse.

And React Native is one of them, that in the age of vibe coding will make your time a lot worse.

React Native is a popular framework for making mobile apps that can run on Android and iOS.

Or at least that's how it's marketed, "write once, run on both."

Like I outlined in this post about vibe coding, vibe coding with JavaScript creates a lot of issues that you don't want.

But there's another reason to not use React Native.

React Native's whole appeal was saving companies/developers time, by allowing them to build one app instead of two, saving them months of time.

The tradeoff was that it was harder to get access to some of the platform-specific features, if a React Native plugin wasn't written for it. Which isn't/wasn't an issue for basic apps, but would progressively become a bigger problem, the more complex the app requirements get.

Another huge downside to using React Native that isn't discussed much, is the pain of upgrading versions.

Sometimes, needing to upgrade a version of one package, causes a cascade of issues where you end up having to upgrade the React Native version, which in turn causes problems with other packages, and so on.

Basically like a game of whack-a-mole.

A lot of teams made the choice that this tradeoff was worth it, and they wouldn't need some of the more complex platform-specific features until their app became super popular, at which point they could pay to get an Android/iOS native app built, finally sidestepping React Native's limitations altogether.

But this paradigm was before AI.

React Native was always a trade: accept the limitations, save months of work. AI took the months off the table. Now it's just the limitations that are left.

Now, you can build native Android and iOS apps at the same time, at a fraction of the time it would take to build just one React Native app pre-AI.

And, you get access to all the platform-specific features, without needing to wait for a plugin to be built.

Or, you could keep playing whack-a-mole with package versions. Your call.

You might like

How to Vibe Code →