In the summer of 2019, a few of our seasoned developers took on the hotly contested topic, “Will Flutter kill React Native?” For more context on the debate at large, you can find the viral video here on our YouTube channel. To catch you up to speed, let’s quickly cover the basics.
What is Flutter? Flutter is an open-source mobile application development SDK created by Google. But really it’s more than just a mobile framework like React Native. It’s mostly for mobile solutions but Google is currently working on making it for the desktop & web as well.
Here’s a rapid-fire of the main benefits of Flutter over React Native:
- The sheer amount of widgets (referred to as components in React) available makes navigation with this tool simpler.
- Error handling & stateful hot reloading.
- The out-of-the-box animations within the tool, such as the “jiggle” to indicate error. (In the words of developer Andrew Watson, it’s “haptic-feedback for the eyes.”)
- The ability to take 2D, SVG animations and use them natively within the app & also extend it for use on other platforms (with Flare).
- Upgrading projects from version to version is more automated.
What’s the developers stance on Flutter vs. React Native in 2019?
It’s something that people were asking then and still now, but most developers would say one framework won’t completely “kill” another - it depends on use-case, community adoption, etc. Many devs observe that the same question was asked about Angular when React came out and there are still users out there.
The major leg-up that Flutter has over React is that it’s backed by Google with a serious commitment. Does being backed by Google ensure success? Not necessarily! But if they get the desktop and web component down then it’s likely it will become more popular than React in the future.
What’s the current stance on Flutter vs. React Native in 2020?
One year and 250,000 youtube views later and it’s still a battle for the two very strong contenders in the mobile space. Both are still fully present on the scene, but Flutter is experiencing extreme growth. Google reports that there are now half a million users on the platform who are active on a monthly basis.
We’ve mentioned it before, but it’s the “out-of-the-box” functionality of Flutter that makes the tool preferable for many. The widgets might make it easier to start a project (especially as a new developer) since the layout can be created faster due to the shorter dependency list.
In comparison React has been updated to have more helpful hooks to get to state and a new navigation of third party libraries. Although, it’s important to note that both frameworks have put in a lot of effort to stay relevant. If the React team hadn’t done a lean core overhaul, they could have been in rough spot. On the other hand if Flutter wasn’t updating the systems that work behind the scenes, they may not have been as useful.
How should someone decide which framework to use?
There are many things that an individual or company might take into consideration when choosing which framework to use. We’ve laid out a list of questions to ask yourself whether you should use Flutter or React Native.
- What are you most comfortable with?
- How easy will it be to onboard people?
- What are your requirements?
- What is your current stack?
- What is your experience?
If you’re an agency there may be other factors at play. At Crema we’re primarily still using React Native (with some Flutter projects in the mix) due to our project history and the expertise of our developers. As an agency, our clients will often come with a request to build with a specific framework which we accommodate. Many other organizations weigh similar considerations when choosing React or Flutter.
So, in the end, will Flutter kill React Native?
“The reason we can’t pick a winner right now is because both tools have done a phenomenal amount of work over the past year to improve. A lot of it is developer perception that generates noise on social, so when a platform really botches something and hits a lot of stumbling blocks, like React, then it would be harder for teams to have confidence to continue to make things that are just React Native.” -CK Hicks (Lead Architect)
“We don’t have the ‘luxury’ per se of being able to choose one or the other because we still have to do both as an agency. My personal preference if I had to choose one would probably be Flutter due to the out-of-the-box functionalities that make it so simple to use. I was able to build an app and launch it in a week.” -Scotty Moon (Mobile Developer)