| Here's a bit about my experience with React Native. I've been using React Native on iOS in production since last November for http://townske.com/app, Over that period, I did hit some performance issues, but the vast majority of those were implementation flaws (i.e. my fault), not framework flaws. Real user feedback has been overwhelmingly positive, including being featured in the app store multiple times. I just launched another app for iOS and Android last weekend (https://curbitapp.com) that was built with React Native in a few weeks, and shares about 80% of the codebase. I haven't spent any time optimising these apps for performance, other than following standard react best practices and see sufficient performance on both iOS and Android. For someone who has a web background, React Native is a no brainer. 60fps native UI is generally attainable, you can use the exact same tooling (good dev tools, hot reloading), and you have the ability to pick up a large chunk of your code and put it on Android, or web, or now potentially OSX. |
After downloading Townske I get hit by three modal dialogs one after the other:
* notifications
* location access
* query about installing an update, even though I've just downloaded the app. If I select install, nothing happens, no progress bar or anything.
Developing for a platform is more than having native-looking widgets, it also means taking conventions and user expectations into consideration.
I am referring to things like the tab bar which has a back button, having a next button and also page swiping in the intro, not throwing popus at the customer, etc.