Need advice about which tool to choose?Ask the StackShare community!

Flutter

6.1K
6.5K
+ 1
822
Ionic

6.7K
6.1K
+ 1
1.7K
Add tool

Flutter vs Ionic: What are the differences?

Flutter: Cross-platform mobile framework from Google. Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android; Ionic: A beautiful front-end framework for developing cross-platform apps with web technologies like Angular and React. Free and open source, Ionic offers a library of mobile and desktop-optimized HTML, CSS and JS components for building highly interactive apps. Use with Angular, React, Vue, or plain JavaScript.

Flutter and Ionic can be primarily classified as "Cross-Platform Mobile Development" tools.

Some of the features offered by Flutter are:

  • 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.

On the other hand, Ionic provides the following key features:

  • Performance obsessed
  • Utilizes Angular and React
  • Native focused

"Hot Reload" is the top reason why over 13 developers like Flutter, while over 234 developers mention "Allows for rapid prototyping" as the leading cause for choosing Ionic.

Flutter and Ionic are both open source tools. It seems that Flutter with 69.4K GitHub stars and 8.09K forks on GitHub has more adoption than Ionic with 38.5K GitHub stars and 13.1K GitHub forks.

Sellsuki, MAK IT, and Edify are some of the popular companies that use Ionic, whereas Flutter is used by Policygenius, pludoni GmbH, and Hybrid Heroes. Ionic has a broader approval, being mentioned in 393 company stacks & 361 developers stacks; compared to Flutter, which is listed in 41 company stacks and 146 developer stacks.

Advice on Flutter and Ionic
espresso_coder
software engineer at AWS · | 6 upvotes · 17.6K views

I am building an app that would need at least two external APIs: a map and a payment service. I am currently building in Flutter, but I am having trouble integrating one of the external APIs with the app. I wonder (because I am still at the beginning) if I should switch to React Native or build native iOS and Android apps separately. Any advice would be appreciated!

See more
Replies (3)
Recommends
Flutter

Choosing between ios/android and Flutter is not simple. Neither is a one-size-fit-all solution. It would be impossible to suggest one or the other without first analysing particular project’s requirements.

Choosing cross-platform development (Flutter) offers a number of advantages – lower cost, faster time to market, etc…, and if applied to the right type of project, will result in high-quality, marketable mobile product. In my opinion, stick with flutter and try to resolve those problems. Here are some useful links,

Map: *https://pub.dev/packages/mapbox_gl *https://www.raywenderlich.com/4466319-google-maps-for-flutter-tutorial-getting-started

Payment Service: *https://developer.squareup.com/docs *https://github.com/square/in-app-payments-flutter-plugin *https://pub.dev/packages/stripe_sdk

See more
Recommends
Flutter

It's a bit late but I suggest staying on Flutter anyway. Though you might face troubles with APIs integration, overall development experience is better on Flutter, so you save some time & power on the project in general. Dunno if it's of any use to you, but as a prove I attach one of many Flutter vs RN comparison articles (you can find any other similar yourself on the web though), hope it helps you make a decision

See more
Recommends
Flutter

can you discuss in more detail why cant you integrate that API?

See more
View all (3)
Melanie Verstraete
Needs advice
on
Ionic React
and
Flutter

Hi community, I am looking into how I should build my tech stack for a business/analytics platform. I am not very familiar with frontend development; when looking into cross-platform frameworks, I found a lot of options. What is the best cross-platform frontend framework to go with? I found Flutter interesting, but Ionic also looks promising? Thank you for the advice!

See more
Replies (1)
Dominic Ocean
Founder at TwentyTwo Co. · | 5 upvotes · 8.9K views

TL;DR Flutter if you target mobile first. Ionic if you target web first and mobile is an afterthought.

Ionic uses a web stack - HTML, CSS, JS, so any web dev should be able to pick it up quickly. Also, if there is an existing React, Vue or Angular app, it can be ported to Ionic with minimal effort, while porting to Flutter would require a complete rewrite.

Flutter uses Dart lang, so you'll need people who have working experience with it.

Ionic is a nightmare when it comes to native functionality e.g. working camera, accelerometer, gps, address book etc etc. Both Ionic and Flutter use plugins to access native functionality. Ionic's plugin quality is spotty while Flutter has its own package manager - pub.dev, where packages are curated.

Flutter is built from ground up and Ionic is like a Frankenstein monster made up of different technologies.

There is Flutter Hummingbird which basically allows you to deploy app to web, but it's in beta and although some companies already use it in production it's not quite production ready. (I believe Rive is using or did use it for their app)

I have worked with both, Ionic and Flutter. Development with Flutter is much more pleasant experience while with Ionic we always felt like we had to jump though hoops quite a bit.

It is difficult to provide a quality advice without knowing your constraints and resources available.

Verdict: I would go with Ionic when : 1. you are on a limited budget 2. there is an already existing web app that just needs to be published to App Store 3. you do not have Dart programmers or cannot retrain existing resource 4. web is a primary target

Otherwise, I would go with Flutter.

P.S. I suggest considering React Native. That maybe a happy medium between these two.

See more
Nikhilesh Goyal
Senior Embedded Engineer at GreyOrange · | 5 upvotes · 153.5K views
Needs advice
on
Unity
React Native
and
Flutter

Hi Friends, I am new to #MobileAppDevelopment and I need to make a #CrossPlatformMobileApp. I want guidance regarding which tools should I use to build a mobile app. Main requirements: integrate Unity game engine and provide a platform for social chats.

Past experience - C++ and Python

I have tagged Flutter and React Native but if anything better than both please suggest them.

See more
Replies (3)
Sahil Singh
Product Manager at AutoVRse · | 10 upvotes · 141.7K views
Recommends
Unity

Hey, If you are using Unity you are going to have to do the end to end development on Unity, you can directly build for android and iOS on Unity. I dont see how Flutter or React Native fit into this equation. Unity is a standalone engine. As for Social Chats, you could use Firebase or your own API and integrate that in Unity in C#

See more
Recommends
Unity

I agree with Sahil. If Unity is a requirement, best way is to use just that to create your app.

If you really want, it should be possible to use Flutter and Unity together. Using Flutter Unity Widget. Although I wouldn't recommend it just yet. It's too early days.

If you do end up using it, I would be very interested in reading about your experiences.

See more
Mathieu Grenier
Recommends
Unity

You can start by small steps with Flutter and after Unity. Flutter = best choice to build a small cross-platform mobile app. With or no flutter, use directly Unity. Y'll have complete control but it's harder for new mobile developers. Keep in mind, the requirement is Unity!

See more
View all (3)
Decisions about Flutter and Ionic
Julie Quintero
Machine learning/ software engineer · | 3 upvotes · 23.2K views

We will use Flutter for our athlete-facing mobile app. Flutter is a cross-platform app development framework, which boasts native performance and allows for creating beautiful, fluid user interfaces.

React Native may sound like a more appropriate option given our choice of frontend technologies, but we foresee little to no feature overlap in the web dashboard and mobile app. Ease of use, performance, good user experiences are key to encouraging athletes to use our app, something which React Native makes difficult, and is where Flutter excels.

We will use the test and flutter_test packages to test our Flutter app

See more
Christopher Chow
Software Developer at University of Toronto · | 4 upvotes · 23.2K views

We chose Flutter since we are developing a mobile application that needs to be performant (to handle displaying large amounts of data and video uploading) and would cover both Android and iOS systems. Since we want the app to be cross-platform, two frameworks comes in to mind: Flutter and React Native. As shown below, Flutter's performance and out-of-the-box support impressed us to pick it as our framework for our mobile app.

React Native has been a dominant force in cross-platform app development since its launch by Facebook. The ability to write React-like code and have it compile to both iOS and Android makes developing mobile apps much easier. However, the overhead done to bridge Javascript code into native code means React Native apps might not be as performant. Moreover, React Native, much like React, is an unopinionated framework that covers minimal functionality out-of-the-box. This means that most functionalities would have to be relied on third-party libraries or developers would have to write their own native code.

Flutter, on the other hand, is a much newer framework developed by Google. While Flutter uses Dart, a relatively new language compared to JS, syntax-wise it is similar enough to that a JS developer should be able to pick it up in no time. The Flutter engine also compiles directly into native code, making it more performant when compared with React Native. Flutter is also an opinionated framework, with a much large stack of Widgets to choose from out-of-the-box. The Widgets are also designed according to Material design principles, making styling easier.

See more
Pierre Canthelou
Lead Developper Frontend/Mobile at WinMinute · | 5 upvotes · 16.2K views

I've made 6 professional/business applications with React Native before choosing Flutter/Dart for the new version of WinMinuteConso (historical in Ionic...). Multi Platform is far more stable, Dart is far more powerful, the whole process is really better... It is just hard to find the proper software architecture...

See more
Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of Flutter
Pros of Ionic
  • 101
    Hot Reload
  • 84
    Cross platform
  • 80
    Performance
  • 69
    Backed by Google
  • 54
    Compiled into Native Code
  • 43
    Open Source
  • 40
    Fast Development
  • 38
    Fast Prototyping
  • 37
    Expressive and Flexible UI
  • 31
    Single Codebase
  • 28
    Reactive Programming
  • 22
    Material Design
  • 19
    Target to Fuchsia
  • 18
    Widget-based
  • 17
    Dart
  • 13
    IOS + Android
  • 11
    Great CLI Support
  • 10
    Tooling
  • 10
    Easy to learn
  • 9
    You can use it as mobile, web, Server development
  • 8
    Have built-in Material theme
  • 8
    Support by multiple IDE: Android Studio, VS Code, XCode
  • 8
    Debugging quickly
  • 7
    Easy Testing Support
  • 7
    Target to Android
  • 6
    Have built-in Cupertino theme
  • 6
    Written by Dart, which is easy to read code
  • 6
    Community
  • 6
    Good docs & sample code
  • 6
    Target to iOS
  • 5
    Easy to Unit Test
  • 5
    Real platform free framework of the future
  • 5
    Flutter is awesome
  • 5
    Easy to Widget Test
  • 246
    Allows for rapid prototyping
  • 226
    Hybrid mobile
  • 208
    It's angularjs
  • 184
    Free
  • 178
    It's javascript, html, and css
  • 108
    Ui and theming
  • 76
    Great designs
  • 74
    Mv* pattern
  • 70
    Reuse frontend devs on mobile
  • 64
    Extensibility
  • 31
    Great community
  • 28
    Open source
  • 22
    Responsive design
  • 20
    Good cli
  • 13
    Angularjs-based
  • 13
    Beautifully designed
  • 13
    So easy to use
  • 12
    Widgets
  • 11
    Allows for rapid prototyping, hybrid mobile
  • 11
    Typescript
  • 10
    Quick prototyping, amazing community
  • 10
    Easy setup
  • 8
    Angular2 support
  • 7
    Fast, easy, free
  • 7
    Because of the productivity and easy for development
  • 7
    So much thought behind what developers actually need
  • 7
    Base on angular
  • 6
    Super fast, their dev team is amazingly passionate
  • 6
    Easy to use
  • 6
    It's Angular
  • 4
    UI is awesome
  • 4
    Hot deploy
  • 3
    Material design support using theme
  • 3
    Amazing support
  • 3
    It's the future
  • 3
    Angular
  • 3
    Allow for rapid prototyping
  • 3
    Easy setup, development and testing
  • 3
    Ionic creator
  • 2
    User Friendly
  • 2
    It's angular js
  • 2
    Complete package
  • 2
    Simple & Fast
  • 2
    Fastest growing mobile app framework
  • 2
    Best Support and Community
  • 2
    Material Design By Default
  • 2
    Cross platform
  • 2
    Documentation
  • 2
    Because I can use my existing web devloper skills
  • 2
    Removes 300ms delay in mobile browsers
  • 1
    1
  • 1
    Native access
  • 1
    Typescript support
  • 1
    Ionic conect codeigniter
  • 1
    Fast Prototyping
  • 1
    All Trending Stack

Sign up to add or upvote prosMake informed product decisions

Cons of Flutter
Cons of Ionic
  • 24
    Need to learn Dart
  • 10
    No 3D Graphics Engine Support
  • 9
    Lack of community support
  • 6
    Graphics programming
  • 5
    Lack of friendly documentation
  • 2
    Lack of promotion
  • 1
    Https://iphtechnologies.com/difference-between-flutter
  • 20
    Not suitable for high performance or UI intensive apps
  • 15
    Not meant for game development
  • 2
    Not a native app

Sign up to add or upvote consMake informed product decisions

What is Flutter?

Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.

What is Ionic?

Free and open source, Ionic offers a library of mobile and desktop-optimized HTML, CSS and JS components for building highly interactive apps. Use with Angular, React, Vue, or plain JavaScript.

Need advice about which tool to choose?Ask the StackShare community!

What companies use Flutter?
What companies use Ionic?
See which teams inside your own company are using Flutter or Ionic.
Sign up for Private StackShareLearn More

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Flutter?
What tools integrate with Ionic?

Sign up to get full access to all the tool integrationsMake informed product decisions

What are some alternatives to Flutter and Ionic?
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
Reviews of Flutter and Ionic
Review of
Ionic

great framework,lots of resources,great community,easy to create UI

How developers use Flutter and Ionic
Pascal Malbranche uses
Ionic

We use Ionic as it is an awesome framework to build mobile hybrid apps with nativ access. Also Ionic has a nice community!

Christian Bryant uses
Ionic

Cross-Platform goodness. I am a noob here...learning how to implement Ionic is on the top of my ToDo's

papaver uses
Ionic

used on a recent project, an internal custom app developed for both ios and android.

Grupo Gamma Peninsular, SA de CV uses
Ionic

Desarrollo de aplicaciones multi-plataforma con HTML5, JavaScript y CSS3

AmericanBibleSociety uses
Ionic

We have plans to employ this frontend framework in future apps.