I have seen mobile applications going from React Native to Native — the other way around seems very rare, since the initial investment needed to develop 2 versions of the application was already made. With Native there are no limitations to what you can do. I would try to find out what is the reasoning behind this decision and decide accordingly.

Flatlists and large lists in general are an issue when specific elements in the list are updated constantly. Mobx allows you to make changes to mutable arrays with Realm — it was very specific for my use case which is why I used it. I ave successfully rendered lists with 500 elements in a Flatlist using Redux (with infinite scrolling — as you go, new items are added to the list) and it was very performant. Again, it all depends on your use case.

React Native is very easy to integrate in an existing application. You just present a new view (RCTView) on an existing native view inside a native application. The end user will experience a delay until the runtime is loaded to display the RNView, however. This delay is small — but noticeable. Other than that you will experience issues with React Native’s asynchronous nature (which is why you cannot build a UICollectionView interface for React Native — because everything you pass to RN must be an asynchronous result). You may not hit this roadblock depending on the nature of your app, however.

Airbnb dropped RN because they found out that they were actually developing 3 versions of the same applications instead of one (iOS, Android, and React Native). This is also exactly the pitfall many fall into (as mentioned in my post).

Software Architect, currently @ Vodafone GR. Past: Lead Dev @ Intrasoft Intl, atcom.gr and more. Crafting apps & web services since 2007. https://oramind.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store