11.3K
11.6K
+ 1
1.1K

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 143K GitHub stars and 22.8K GitHub forks. Here’s a link to Flutter's open source repository on GitHub

Who uses Flutter?

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

Developers
10527 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 31 tools that integrate with Flutter.
Pros of Flutter
126
Hot Reload
106
Cross platform
98
Performance
82
Backed by Google
68
Compiled into Native Code
54
Fast Development
53
Open Source
48
Fast Prototyping
44
Expressive and Flexible UI
42
Single Codebase
35
Reactive Programming
31
Material Design
26
Widget-based
25
Dart
24
Target to Fuchsia
17
IOS + Android
14
Easy to learn
13
You can use it as mobile, web, Server development
13
Tooling
13
Great CLI Support
11
Debugging quickly
11
Good docs & sample code
11
Have built-in Material theme
10
Target to Android
10
Community
10
Support by multiple IDE: Android Studio, VS Code, XCode
9
Written by Dart, which is easy to read code
9
Easy Testing Support
8
Real platform free framework of the future
8
Have built-in Cupertino theme
8
Target to iOS
7
Easy to Unit Test
7
Easy to Widget 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
on
FlutterFlutterDartDart
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

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
Shared insights
on
DartDartFlutterFlutter

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
Shared insights
on
FlutterFlutterC#C#

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
Shared insights
on
FlutterFlutterAngularDartAngularDart

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
Shared insights
on
JavaJavaFlutterFlutter

Hi everyone! I'm going to work on my FYP soon, and I was wondering which language is the most suitable for making a mobile app? I'm considering Flutter as I have tried it before in mobile development, but I'm more familiar with Java as it was taught in university for system development.

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
11550 developers follow Flutter to keep up with related blogs and decisions.