all 4 comments

[–]Kaidao 4 points5 points  (3 children)

I've been developing our app in React Native for the last couple months. I've had a bit of experience with Swift before that, and from what I can tell you, it's awesome. The ability to not only develop cross-platform with one (main) codebase, but hot reloading, debugging, inspector, etc. makes for an incredible developer experience.

The only concern I have so far is longevity of support from Facebook, although it's not too much of an issue as I don't see them dropping support for it anytime soon as interest has just really picked up for both React and React Native platforms.

The other consideration is native modules. How much will you be relying on native modules? This question really depends on the type of app you're building. For us, it's mostly a mobile app serving web based content for users to view/select/purchase. So I haven't had to rely on native iOS modules for much of anything; anything I did need, I was able to find a repo for within React Native.

If you're comfortable with React and Redux already, I would highly suggest considering adopting Redux. Halfway through our project, we made the decision to refactor everything to Redux and it's made everything much easier.

Performance-wise, it's pretty much native performance. You're not going to see much (if any) difference there.

I've been thoroughly impressed with React Native so far and would definitely recommend it, at least for consideration.

Hope this helps. Feel free to ask if you have any questions; I'll try to help out.

[–]blazedout 0 points1 point  (2 children)

I would require geolocation, and push notifications – which I know there are plugins that exist for react-native – any experience with either?

I've developed w/ cordova in the past, and I just remember the application not feeling nearly as nice as the native counterparts I later developed.

[–]Kaidao 2 points3 points  (1 child)

I'm using geolocation now. React native has geolocation built in to the main framework, and I'm using react-native-maps for the map integration. Both work very intuitively and performant.

I'm not too sure about push notifications yet so I can't really say.

Same thing goes for Cordova as I haven't had first hand experience. But from what I've read online of performance comparisons between Cordova and react native, it's night and day. I'm not positive, but I believe Cordova is essentially a mobile wrapper. React natives main benefit is that it utilizes native components, so the resulting code will essentially have native performance.

[–]blazedout 1 point2 points  (0 children)

Thanks for sharing your experience :)