Google then officially launched Flutter™ at the end of 2018; a portable UI toolkit for building natively-compiled apps across mobile, web, and desktop from a single codebase. Flutter grows very fast, and really does make sure that an application developed with it will look and fell the same across different platforms. Flutter 2.0 was released in March 2021.
A view at Google Trends data for searches for “react native”, “flutter” and “pwa”, for the last five years, shows a clear increase in interests over time.
Applications created with Flutter are equally stylish in newer as well as older operating systems, be they Android or iOS. A unified code base means just this, a unified look and feel. In addition, Flutter contains two sets of widgets which conform to specific design languages: Material Design widgets implement Google’s design language of the same name; Cupertino widgets imitate Apple’s iOS design.
React Native uses native components in the background for Android and iOS applications. As such, any UI-updates will also update the look of the application automatically. To be on the safe side and assure this happens, it is suggested that third party libraries be used to avoid issues.
|Launched||December 2018||March 2015|
|UI||As stylish on older as newer systems. One code base for a unified look across handsets. Material Design and Cupertino widgets help in assuring a correct design for Google and iOS.||React Native uses native components, so the design on both Android and iOS is natural. Any UI-update should update written code. Third party libraries can be used to make sure that backwards compatibility and a unified design can be achieved across various handsets and OS’s.|
|Pros||– Stylish final product and user experience|
– Good widgets producing high quality content
– Fast growing development and community
– Clear documentation and support for developers
– One language to rule them all
– Fast to learn
– Faster to test
|– Very widely used- Over 5 years on the market|
– Easy to learn
– Bundles of documentation to be found
– Code can also be used for, for instance, web projects
|Cons||– Not the best for smaller “instant apps”|
– No 3D Touch support (yet)
– Relatively small user base
– Apps are quite large
|– Difficult to use for customer Bluetooth applications|
– Not the first choice for pure Android development
– Less ready made components
We’ve dwelled into many web and mobile technologies over the years, but Flutter is the one technology that keeps coming up in discussion with developers, as well as in public forums the past year and a half.
At Circles we see many different opportunities in using a technology that is developing fast and which is aimed at solving complexities. Flutter can speed up both larger product development cycles as well as smaller projects significantly.
In our projects, we’ve used Flutter and our knowledge of it within the health tech sector, where we have built an application for clinical studies. Here a requirement was that any updates to the OS must not in any way affect the look of the application, which is why Flutter was chosen for the project.
We also use Flutter in our internal development.
It is however important to remember that all development needs are different, which is why we always go through the specifics of a project and its target and intended usage, before suggesting the right development approach. Below is a short comparison between various platforms and tools.
|Native||Cross Platform||Progressive Web Application|
|Platform / Technology||iOS|
|Strengths||The best user experience|
Instant application update use
Large component libraries
|A good user experience|
One code base, several OS’s(iOS, Android etc)
Large component libraries
Cheaper to develop than native apps
Cheaper to maintain
|No application needed|
Can be used in conjunction with other web development
Expensive to support
One code for each OS
|No 3D support|
Slower than native
|The user experience|
Not available offline
If your goal is to develop an app with the need for high-end graphics, where processing power could be a bottleneck, a native application is always a sensible choice.
Should the need instead be to display data without interactivity, then a HTML 5 page would suffice.
With one language, a neat look and the strong development from Google and its growing developer base, we find that Flutter is a modern choice for mobile app development for 2021.
This is why we have chosen Flutter as our primary tool for our mobile development, making sure that our consultants stay on top of the latest development and training.
We will happily discuss various options to find the best possible solution for your development needs, so get in touch today!