It’s time to put an end to the long debate Flutter vs PWA vs Native. The Winner is PWA !
Having seen both sides of creating apps via PWA, Flutter, Native & Hybrid apps for over 4 years I can confidently say PWA is “THE FUTURE“.
Why is PWA so much better than any other technolgy. Why should you go for PWA and not for once think about anything else.
Simplicity
Creating PWA is so simple and easy. If you understand the basics and creating a PWA is really simple, but you have to take care to design your PWA properly, just the hacky stuff that some of the WordPress.org plugins claim to create every site a PWA.
PWA can be created in as less than 10-200 line of Code even for the most complex apps ! Our Learning management system PWA code is less than 200 lines and it is full featured with inbuilt Content Editor , Video recorded and Artifical intelligence.
Compare with Flutter / Native / Hybrid apps, 200 lines is a clear winner. You save time, money and a lot of mind trouble.
Single Code base for Web + Mobile + TV
Your web and apps share the same code base. Maintaining 2 projects for same thing is a PITA for every developer. Next comes the development overhead, you create a Feature A in web and now you need to create it for the Apps.
Native apps: you have to create it both for android and ios.
Flutter / React Native, you re-write code then compile and release. For flutter you have to learn DART language as well ( learning new language just for creating app and tomorrow Google invests in another project what then ? ).
Not just FAST , Blazing fast
PWA is blazing fast. Faster than Native and definitely Flutter. The main thing is that when you create a PWA you focus on 1 element, that PWA should load fast on web and all platforms. Designing PWA involves strategies to make it load fast.
Native app developers claim native is faster than PWA sure it is faster by 10ms ( less than a blink of the eye ).
Common Sense : Any app which pulls data from a server via REST API will have the same lag that is involved in downloading data from the server. Once the data is downloaded from the server (2-300ms), the native app renders in 30ms and PWA in 50ms. Now question is are you willing to spend $2000+ to save those 20ms ? Or put those $2000 in marketing or new feature.
Offline View : For Flutter and React native you do almost equal ( >= ) amount of work and create strategies to make then load fast and store content for offline view. With PWA you do that work once so this is half the work. Native is not in the competition here.
Conversion to Apps & publish on App Stores.
PWAs can be easily converted into apps for both iOS , Android, Microsoft, Samsung. For Mobile, tablets and Desktops. Further, PWAs can be published on app stores with much ease. The PWABuilder tool from microsoft directly converts PWA into mobile apps ready to be published on app stores.
With PWA you really do not need to upload on App stores, if you say it improves traffic or viewership then you are wrong. Studies have revealed that an App on App store does not bring in more traffic or give additional exposure. If it is brand value you are after PWA can also give you mobile apps.
Maintenance & Updates.
Honestly not many business think about this, they fall into the trap of building an over expensive app, along with a service provider who charges exorbitantly on app maintenance. Few years later you realise, you have invested so much on the damn project that you are actually making a loss by choosing the wrong technology & provider.
What if a bug appears, you will need to contact both App and web teams to follow up and implement fixes.
Feature : Feature is developed once in PWA and is available in all platforms at once including the web.
While for PWA all App + web infrastructure and traffic is same , for other Native/Hybrid you have to maintain your traffic in 2 different categories : App traffic, Web traffic. Maintain different bug logs, different projects , feature lists, releases and the list goes on and on. Sooner of later you are bound to get headaches and
Scalability
This part is about load & traffic, PWA optimises the traffic load between the browser and the server. No other technology does that.
When your app really starts attracting more and more traffic, you would need additional infrastructure for the App.
Sure there are uber-expensive scalable options on the server infrastructure but not everyone can afford it and actually it does not make any sense as well when you compare with a PWA.
A PWA never goes down even when your server does, even when your internet does. It saves the responses and posts when the server and internet is back online. Now that scalability you can not afford.
Conclusion
IF you are planning to create a project for Web or App, where the majority content is to be loaded from a server via REST API / GraphQL it totally makes sense to use a PWA and not save additional resources on Server or developement of native apps. Think about How much you can save and use it in marketing and sales to boost your product.