TrustRadius: an HG Insights company

Flutter by Google

Score8.1 out of 10

83 Reviews and Ratings

What is Flutter by Google?

Flutter is an open-source mobile application development framework created by Google. It is used to develop applications for Android and iOS, as well as being the primary method of creating applications for Google Fuchsia.

Categories & Use Cases

My first choice for native app development

Use Cases and Deployment Scope

Flutter is well known for native app developments. We can easily develop both android and ios as well as web apps using just one source code. We use it to develop our android and ios mobile apps. This saves a huge amount of our time as we do not have to build different codebases to develop apps for major mobile OSs, i.e. android and ios.

Pros

  • Flutter has one of the greatest user interface in world of mobile app development.
  • It offers positive user experience.
  • Flutter has a large knowledge base and various tutorials available.

Cons

  • To use Flutter, we have to learn a new programming language.
  • They could offer more theme options to choose from.

Most Important Features

  • The best thing I like about Flutter is its UI & UX.
  • The next thing is, as it is powered by google, there are regular updates, and it's well documented.

Return on Investment

  • Flutter's native app development helps to save a lot of time and energy.
  • It helps us to reach out users with a better UI/UX.

Alternatives Considered

React Native

Other Software Used

AnyDesk, Google Cloud CDN, Google Cloud DNS

The fifty shades of Flutter

Use Cases and Deployment Scope

We are utilizing Flutter for the development of a cross-platform app dedicated to scheduling the student courses, timetables, mobile file reader, and simple communication server-client interaction. Also, it is used for the implementation of some specific platform-based application development such as electromagnetic pulse detector for iOS, Android OS and MacOS platforms.

Pros

  • Cross-platform support and development
  • Native Features Access (for instance, reuse of Kotlin and Swift in development)
  • Instant changes in the app
  • Smooth performance, especially for UX

Cons

  • Minimizing the code size (in MBytes), compared to Kotlin and Swift
  • Future support of web apps
  • High entry level - learning Dart language (not very popular one)

Most Important Features

  • Cross-platform support and development
  • Fast deployment of changes made in the app
  • Great UI widgets and built-in tools

Return on Investment

  • It has increased the velocity (in terms of Sprint in Scrum)
  • It has decreased the SDLC time
  • The fast deployment of MVP app allowed to attract seed venture investments in less time than expected

Alternatives Considered

Android Studio

Other Software Used

Android Studio, React Native, Xamarin, NativeScript

A very good, new, performant, and easy to learn framework

Use Cases and Deployment Scope

I have to be honest, the first time I saw the Flutter syntax I was horrified until I started to try it and wrote a couple of proofs of concept to grasp the basics of the language (Dart) and the framework. Once you start, and after becoming familiar with the weird indentation, the framework proves to be really performant and useful for rapid prototyping of conceptual apps.

Pros

  • Performance
  • Time to market really low
  • Animations are super easy, and very nice
  • A lot of useful and ready to use libraries can be found in dev.pub

Cons

  • Difficult at first
  • Dart is not a commonly used language

Most Important Features

  • New, shiny framework
  • The promise of a framework that lets you write code once and run it everywhere
  • A performant and rapid prototyping tool

Return on Investment

  • It has reduced the development time for mobile proofs of concept

Alternatives Considered

Xamarin and Apache Cordova

Other Software Used

Xamarin, Ionic, Microsoft Visual Studio Code

Cut your development time in half without sacrificing quality and performance

Use Cases and Deployment Scope

We use Flutter for our cross-platform mobile app. We wanted to use something like Flutter in order to maintain a single codebase, with the goal of not compromising on performance and quality. While it's simply not feasible to build 100% native-quality apps with a cross-platform solution like Flutter, our goal was to get 95% of the way there, and we believe Flutter achieves this goal while allowing our developers to use a single, shared codebase and work on updates for iOS and Android simultaneously.

Pros

  • Decreases development by half, sometimes more.
  • Increases collaboration by providing our developers a shared language and codebase to work with.
  • Generally strong performance, with very few noticeable performance drop-offs, compared to native code.
  • Extremely strong plugin ecosystem and developer community.

Cons

  • Occasionally updates to the Flutter SDK result in wide-sweeping changes that seem to not be thoroughly tested and considered. Flutter sometimes evolves too fast for its own good.
  • While the 3rd-party Flutter package ecosystem is vast and rich, 1st-party support for basic things (audio/video playback, battery information, Bluetooth services, etc.) are lacking. You are occasionally forced to rely on an open-source package for use-cases that other platforms have native support for.
  • Documentation, particularly around testing, is lacking. While there are some great docs, like the Dart Style Guide, many Flutter-focused support documents are lacking in quality and real-world usability.
  • Flutter allows you to architect an app however you want. While this is a great feature, it also adds complexity and leads to the current state of Flutter's state management, where there are 50+ options on how to organize your app, with very little official guidance or recommendations from the Flutter team. For a beginner, this can create decision paralysis.

Most Important Features

  • Cross-platform development with a single codebase.
  • Integration and unit testing.
  • Easy development experience (hot reloads, debugging, VSCode integration, etc.)
  • Vast package ecosystem.

Return on Investment

  • Essentially cuts the number of engineers needed in half (you don't need native iOS AND Android programmers, just Flutter devs).
  • Allows us to develop and ship updates on iOS and Android simultaneously.

Alternatives Considered

React Native

Other Software Used

Firebase, Mailchimp, Twilio SendGrid

Mobile Apps are the future of businesses & Flutter is the future of app development

Use Cases and Deployment Scope

These days most business services are available online using various mobile apps. Everyone is using their mobiles to avail various business services. Businesses also prefer to use Mobile Apps to reach out to their users. Developing these requires huge time and money. Flutter, by Google helps us to develop native apps, it helps in quicker development of the android and iOS apps.

Pros

  • It is powered by Google, so a great technical community is backing it.
  • The development of native apps is an easy process using Flutter.
  • As it is an open-source tool, we can use it without paying anything.
  • It provides nice UI options.

Cons

  • It still needs stability, there are too many frequent updates.
  • It requires learning a new programming language, i.e. Dart. However, one can learn it easily if you have previous experience with JS or any similar language.
  • Documentation is too technical.

Most Important Features

  • It supports the Android Studio as the IDE.
  • Quicker Development with nice performance.
  • Many themes and widgets are available.

Return on Investment

  • Reducing the development time.
  • Improving the performance of the Apps.
  • Improving the App UI/UX.

Other Software Used

Google Cloud DNS, Google Compute Engine, Google Cloud CDN