Should I use FlutterFlow to create Flutter apps? — Flutter vs FlutterFlow — Update
On July 3, 2021 I have already compared Flutter and FlutterFlow. The result was clear: Flutter won. But how does it look now? I compare Flutter and FlutterFlow again after half a year and will find a new winner. We will again go by the same criteria:
- How long will it take me to learn one of the technologies?
- How creative can I be?
- How visual can I build my apps?
- Pub.dev and custom packages
- Responsive Layout
- Bugs & Bugfixes
- Community and help with problems
This time we will include three more categories, which were forgotten last year:
- Multiplatform
- Deployment to Stores
- Collaboration with Team members
If you want to read more articles like this, I would appreciate if you could Follow me and give this article a few Claps! Thanks!
Let’s start right away, I hope you enjoy reading!
How long will it take me to learn one of the technologies?
Even if you think that this question is easy to answer, it is not that easy.
Learning FlutterFlow from scratch with everything it has to offer takes about 3–4 weeks, if not longer.
Of course, learning Flutter takes much longer. It takes about 2 months to develop basic apps and at least 6 months to get good at it. But these times assume that you invest 3–4h every day.
Actually, this thing is clear now, but…. FlutterFlow also offers custom functions. This brings you in contact with real Flutter and you have to write your own code.
But let’s be realistic, the functions you use there are the basics of Flutter. Therefore this point goes back to FlutterFlow.
Current state: 1:0 for FlutterFlow
How creative can I be?
At the beginning I thought this question can be answered easily, but that has changed in the meantime. While Flutter offers thousands of widgets, FlutterFlow still offers quite a small number of widgets. While these are the most used widgets, the really good widgets that hardly anyone knows about are simply missing. This is extremely disruptive to the workflow and is not the case with Flutter.
But to be fair: FlutterFlow has really improved. You can now add animations, conditional visibility and even add your own widgets with proper code. After all, that means you can now use any widget from Flutter. Yes, but it’s just not included in the app builder and you still have to write custom code. Also, the linter there isn’t the best and can’t identify what comes from which package. Sorry, but Flutter is way ahead of that.
So now we come to a balance of 1:1.
How visual can I build my apps?
This question can be easily answered this time though and still goes to FlutterFlow. This tool is very intuitive to use in most cases and you don’t need much computer knowledge to use this app builder, unless you want to write your own functions. It’s quite different with Flutter, where you write code throughout and don’t have a lot of visual help. There are VSCode extensions like FlutterBricks now, but even those convert everything to code.
Now FlutterFlow takes the lead again with a 2:1.
Pub.dev and custom packages
Here, unlike last time, it won’t be so easy to pick a winner.
Meanwhile FlutterFlow offers the possibility to use packages from pub.dev. Unfortunately the linter goes crazy, as I said before. Also it is very hard to upload your own package which is not on pub.dev. You can upload code, but I don’t see this as uploading a package. Also, this is not visually integrated either but only with code, which drifts away from the main point of FlutterFlow.
Even if FlutterFlow already offers first possibilities to use packages, Flutter has here a clearly simpler way to do this. That is why it is now 2:2.
Responsive Layout
Again, FlutterFlow has done some things since last time and you finally have the option to turn on Responsive Visibility. However, this is unfortunately still nowhere near as mature as Flutter and many widgets are simply missing there. Still goes a point to Flutter here as well. Under the last article, the Google Developer Expert Randal Schwartz wrote the following: “Responsive Layout should be worth five points right there. You can’t use graphic interfaces easily to describe “cut points” and “alternate layouts” based on varying widths. Important on web and desktop, but also the variety of fixed sizes on mobile devices.”
Honestly, I agree with this and FlutterFlow should focus more on this and not keep adding things that only a few users need in many of their apps.
Still, I’m only awarding one point here as this is unfair to FlutterFlow and this is not a fair comparison then.
So it is now 2:3 for Flutter.
Bugs & Bugfixes
Well, here I could write the exact same thing as last time, but let me explain it again.
FlutterFlow is not that new anymore and is already over a year old. Unfortunately it still has some bugs that can’t even be fixed by the community, because FlutterFlow is not open source, which is generally a big point of criticism from my side.
Flutter of course also has some bugs, if not more than FlutterFlow. But the difference is that the Flutter system is much bigger than FlutterFlow and can allow itself a few more bugs. Even if it has more bugs, they can at least be fixed by the community itself, because Flutter is open source.
Here like last time the point goes to Flutter and it says 2:4.
Community and help with problems
As just mentioned, FlutterFlow is already one year old and has built up an amazingly large community. Of course, Flutter’s is still bigger, so you’ll find solutions to problems much faster. With FlutterFlow, problems don’t come up that often, but when you do run into an issue, it can take a while to get help.
Again, the point goes to Flutter, making it 2:5.
Intermediate score
Last time the item ended here, this time it doesn’t. It’s 2:5 again, same as last time with the same scoring on the same criteria. Honestly, this disappoints me, considering that the cofounder of FlutterFlow even replied to my last article and clearly said “Responsive support is coming in the near future, we’re pretty excited about that.”. That was 6 months ago and for that I find the result very sobering.
To be fair, FlutterFlow has made great progress in some areas. But if you follow the FlutterFlow newsletter, as I do, you notice that a lot of small features are introduced that are needed in few apps. In return, very big improvements are rarely announced and you get the feeling that the Flutterflow team neglects these big things.
But enough talking now, a detailed evaluation will come at the end of the blogpost.
Multiplatform
Multiplatform became a big topic at the beginning of 2021 with Flutter 2.0, which I didn’t address in my last article about FlutterFlow. Now with Flutter 2.10 it has become an even more important feature now that Windows stable has come out and with it many new features.
FlutterFlow offers stable Android, iOS and web. MacOS is in beta version and Windows is in alpha. On Linux, you can just find a ¯\(ツ)/¯ emoji. Honestly, that’s not very nice, considering that multiplatform is what gives Flutter its certain something.
Therefore, unfortunately, Flutter wins again and the score is 2:6.
Deployment to Stores
Here we have to admit that FlutterFlow does a really good job when it comes to deployment. It’s easy to use, has a beautiful UI and any layman can use it to get an app into the AppStore. That’s a bit more difficult with Flutter. That’s why FlutterFlow wins here, but…. the whole thing is not free with FlutterFlow. To get just the source code and an APK file you have to pay $30 a month. That is incredibly much. But that’s not all. To deploy to the App Store and Play Store directly you have to pay $70 a month. That’s an outrageously high price in my opinion, considering that building an app in FlutterFlow won’t do you any good if you don’t pay at least $30. And if you want to publish your app as a layman, you have to pay $70 a month. I get a Netflix subscription for around $8 a month, a Disney+ for $8 and Amazon Prime for $13 a month. Yes, these companies are very big, but $70 is still a high price and I get all this together for the price of the $30 subscription.
Since FlutterFlow does have that functionality and it’s clearly easier than Flutter, it’s a tie here. FlutterFlow would have gotten the point if they had made it free or cheaper.
It now stands 3:7.
Collaboration with Team members
Not much to say here. With Flutter you can collaborate with VSCode via Live Share and with the other IDEs as well. FlutterFlow also has collaboration built in. Both work great and there is not much difference.
Point for both, it’s 4:8.
Conlusion
Even though the final score of 4:8 for Flutter clearly speaks for itself, we have to admit that FlutterFlow has made huge progress. It still has some things to improve, but some only minimally. So it’s possible that FlutterFlow will become really useful in the near future. Personally, the high price of the subscription annoys me, because it includes some of the most important features. Without a subscription you don’t get anything from the app builder, which makes me very sad. If this problem is not fixed, I personally will probably never use FlutterFlow and may switch to a new alternative soon.
Regardless of whether I will use it or not. If FlutterFlow changes a few things, it will definitely be a worthy “competitor” to Flutter, even if the cofounder says: “[…] we love Flutter and started building FlutterFlow to add to the incredible power it already brings.”.
If you want to see more updates on whether FlutterFlow is good enough and also see another comparison of other app builders, you should follow me!.
I hope I was able to help you with this post. If so, I would be very happy to get some claps.
You can find even more quality content on my Twitter channel, which you are also welcome to follow.
Thanks for reading, have a great day!