I need to deploy my iOS app to Android and rather than maintain two codebases I was thinking of switching to either Flutter or React Native. Does anyone with experience have any recommendations?
Flutter is promising and will probably be a solid option in the near future, but for anything other than experimentation and learning I would strongly recommend React Native.
RN has a solid community, many external libraries available, and the ecosystem to support production apps.
Thanks. Really appreciate the feedback.
Don't forget to consider Vue Native! https://vue-native.io/ Also, React Native just announced they are working a huge rewrite https://facebook.github.io/react-native/blog/2018/06/14/state-of-react-native-2018 . Just 2 heads up, don't have technical expertise in area.
I think Vue native is just too young to consider right now. I've read the blog post. Both promising and worrying. Thanks for your comments!
Sounds like you're already a native iOS developer. I've been working with Flutter for almost a year now on some production apps for clients, and I love it. The Flutter team is making big leaps forward with it quickly, and now that they've made the jump to Dart 2.0, I think it's in a pretty stable place where you're not going to have to make huge changes down the road to deal with support. The package/plugin architecture is nice, with the ability to run fully native code on each platform to solve certain problems (GPS, for example). My React Native experience is next to nothing, so I can't directly compare, but wanted to give my experience with Flutter, and hope that helps! Good luck, either way!
Yes, native iOS with Swift. It's been great. Sad to part ways because it's such an elegant language and ecosystem. I'm downloading Flutter SDK and going to give it a whirl. I have a solid feeling about it and the chaos that are the dependencies with RN seem scary. But may be unfounded fears. Thanks for your comments!
I actually think both are viable options for the majority of simple native applications. Flutter will allow you to truly have one codebase that shares nearly all of the same code. Like Ohad Ron mentioned, it is a little more immature. However, it is batteries included whereas going React Native requires making quite a few decisions around tooling and libraries. Facebook also recently announced that big changes are coming for React Native so the footing may not be as solid as some think.
If you are a JavaScript developer, you might find the leap to React Native easier. If you are a Java/Android dev, Dart, the language powering Flutter, will likely feel more familiar.
I'm a native Swift OOP dev so Flutter is a bit more appealing from that point of view and I'm quite nervous of what looks like massive dependency bloat with RN. Thanks for your comments dude.
Do you have a link regarding the big changes coming for React Native? I would be interested in reading more about that.
I think this: https://facebook.github.io/react-native/blog/2018/06/14/state-of-react-native-2018
I just came across this too. Airbnb has a very thorough dissection of their usage of RN. Many of their issues won't be relevant for an indie hacker, but it is worth a read for anyone considering RN. Spoiler: they will be sunsetting RN in the future.
https://medium.com/airbnb-engineering/react-native-at-airbnb-f95aa460be1c
This comment was deleted a year ago
Sounds like a recommendation with a warning :) I'll check it out. The simplicity of Flutter seems alluring though. I'm scared of dependency bloat.
This comment was deleted a year ago
Yeah that's the main thing pushing me towards RN.
Why would you recommend React Native?