15.7K
15.2K
+ 1
1.2K

What is Flutter?

Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.
Flutter is a tool in the Cross-Platform Mobile Development category of a tech stack.
Flutter is an open source tool with 158.3K GitHub stars and 26.4K GitHub forks. Here’s a link to Flutter's open source repository on GitHub

Who uses Flutter?

Companies
709 companies reportedly use Flutter in their tech stacks, including CRED, Delivery Hero, and Nubank.

Developers
14371 developers on StackShare have stated that they use Flutter.

Flutter Integrations

Firebase, Android SDK, Socket.IO, Dart, and Strapi are some of the popular tools that integrate with Flutter. Here's a list of all 39 tools that integrate with Flutter.
Pros of Flutter
139
Hot Reload
116
Cross platform
105
Performance
88
Backed by Google
72
Compiled into Native Code
59
Fast Development
58
Open Source
53
Fast Prototyping
49
Single Codebase
48
Expressive and Flexible UI
36
Reactive Programming
34
Material Design
30
Dart
29
Widget-based
26
Target to Fuchsia
20
IOS + Android
16
Great CLI Support
16
Easy to learn
14
You can use it as mobile, web, Server development
14
Tooling
13
Debugging quickly
13
Have built-in Material theme
12
Community
12
Target to Android
12
Good docs & sample code
11
Support by multiple IDE: Android Studio, VS Code, XCode
10
Easy Testing Support
10
Written by Dart, which is easy to read code
9
Target to iOS
9
Have built-in Cupertino theme
9
Real platform free framework of the future
8
Easy to Widget Test
8
Easy to Unit Test
Decisions about Flutter

Here are some stack decisions, common use cases and reviews by companies and developers who chose Flutter in their tech stack.

Jeyabalaji Subramanian
Shared insights
at

For a slide deck view of this content, visit https://www.slideshare.net/JeyabalajiSubramania/flutter-at-fundscornerpptx

Context: Recently we were looking for a tool to build cross-platform mobile apps. The primary goals for us were two fold: 1. Ability to roll out the mobile app fast. Being in the FinTech segment, our focus is more on usability & accuracy and less on the flashiness of the app in itself 2. Our web development team must be able to build mobile apps. The UI & UX fundamentals are pretty much the same.

With the above in mind, we evaluated React Native, Vue Nativescript and Flutter. While we were able to build fast in all these three choices, we chose Flutter for the following reasons:

Pre-built widgets: All the standard widgets that are required for us to build a functional app were readily available, & required minimal or no tweaking! It was pretty much like cooking up something on the web with Vue & Vuetify, which offer the fastest time frame from code to reality. The key differentiation Flutter offers over it's rivals is the native feel you get on all the widgets. No one can figure out whether it was built in Native android or Flutter.

Availability of Pre-built widgets in Flutter makes it a natural choice for going the fastest from design to reality.

Easy programming constructs & Hot Re-load: The component coding for Flutter is done through Dart. It is kind of a cross between Java & JavaScript. It is easy for the developers. I found asynchronous programming in Dart a breeze! Dart is one of the key reasons why you would build an app in record time with Flutter. Also, you will love the hot reload feature in Flutter, through which you can immediately validate the user interface and interactions.

Hot Re-load is one of the key features that make development in Flutter a breeze.

Rich set of plugins & great documentation: Flutter eco-system has matured over a period of time. We were able to easily find solutions to various problems & all the plugins worked without breaking anything. For example, we wanted to build a web view for integrating with a Payment link & flutterwebviewplugin was readily available and we were zooming in less than 30 minutes!

With great documentation and eco-system, you are always a plugin or a widget away from completing your functionality!

Great support for Reactive State Management: We were spoilt for choices when we looked at the various options for implementing Reactive statement management. After looking at a number of options, we settled with RxDart and Provider Consumer (Bloc) pattern to implement reactive statement management.

You will be able to apply your hard earned reactive state management skills in Flutter seamlessly & built beautiful reactive apps.

Easy integration with Android Native SDKs: Flutter provides a platform interface to integrate with native SDKs. Being in the FinTech industry, we were required to integrate with a number of industry-standard SDKS for payments & KYC, which were available only in Native. We were to connect with these SDKs and code with ease with the platform interface.

In the end, we were able to build and release an end-to-end, material design compliant and functionality rich Borrower app within a matter of one month and release it for Beta preview!

With the announcement of Flutter for Web in this year's google I/O, I think Flutter is going to go big and will shake up the world of cross-platform development.

See more
Needs advice
on
FlutterFlutterLaravelLaravel
and
MySQLMySQL

Developing a managed multivendor marketplace mobile app to enable users to buy and sell (mainly used hardware) products from the same app, allowing buyers to checkout and purchase an entire listing at either the set "buy now" price or "make offer" to buy at a negotiated price with the seller. Please share your opinion on my current choice Flutter + Laravel (with MySQL) and are there more feasible alternatives?

See more
Needs advice
on
DartDartDjangoDjango
and
JavaScriptJavaScript

I am currently learning web development with Python and JavaScript course by CS50 Harvard university. It covers python, Flask, Django, SQL, Travis CI, javascript,HTML ,CSS and more. I am very interested in Flutter app development. Can I know what is the difference between learning these above-mentioned frameworks vs learning flutter directly? I am planning to learn flutter so that I can do both web development and app development. Are there any perks of learning these frameworks before flutter?

See more
Needs advice
on
FlutterFlutter
and
React NativeReact Native

Hi, I'm considering building a social marketplace app on android, ios and web, Flutter seems to be a good UI framework for cross-platform apps, it's safe type, hot reload, and native compiling on native machine code (thanks to Dart). My question is, for an MVP product is it a good choice? if yes, will it be on the mid-term, long term? Or will I have to change as the users grow?

thank you

See more
Needs advice
on
Android StudioAndroid Studio
and
FlutterFlutter

I have experience in game development for 5 years in C# and have a coding background of around 7 years. I want to choose a mobile application tool, but I am confused about what to choose between android native or Flutter.

See more
Needs advice
on
Angular CLIAngular CLI
and
AngularDartAngularDart

Is it worth to learn AngularDart in 2020 ? Currently I am working on Flutter, I want to learn web technology so I thought about AngularDart to learn. Is this good option or demanding in market ?

See more

Flutter's Features

  • Fast development - Flutter's "hot reload" helps you quickly and easily experiment, build UIs, add features, and fix bug faster. Experience sub-second reload times, without losing state, on emulators, simulators, and hardware for iOS and Android.
  • Expressive UIs - Delight your users with Flutter's built-in beautiful Material Design and Cupertino (iOS-flavor) widgets, rich motion APIs, smooth natural scrolling, and platform awareness.
  • Access native features and SDKs - Make your app come to life with platform APIs, 3rd party SDKs, and native code. Flutter lets you reuse your existing Java, Swift, and ObjC code, and access native features and SDKs on iOS and Android.

Flutter Alternatives & Comparisons

What are some alternatives to Flutter?
React Native
React Native enables you to build world-class application experiences on native platforms using a consistent developer experience based on JavaScript and React. The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere. Facebook uses React Native in multiple production apps and will continue investing in React Native.
Xamarin
Xamarin’s Mono-based products enable .NET developers to use their existing code, libraries and tools (including Visual Studio*), as well as skills in .NET and the C# programming language, to create mobile applications for the industry’s most widely-used mobile devices, including Android-based smartphones and tablets, iPhone, iPad and iPod Touch.
Android SDK
Android provides a rich application framework that allows you to build innovative apps and games for mobile devices in a Java language environment.
Java
Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
Kotlin
Kotlin is a statically typed programming language for the JVM, Android and the browser, 100% interoperable with Java
See all alternatives

Flutter's Followers
15255 developers follow Flutter to keep up with related blogs and decisions.