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

Ionic

9.3K
8.4K
+ 1
1.8K
Materialize

702
1.2K
+ 1
557
Add tool

Ionic vs Materialize: What are the differences?

Developers describe Ionic as "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. On the other hand, Materialize is detailed as "A modern responsive front-end framework based on Material Design". A CSS Framework based on material design.

Ionic and Materialize are primarily classified as "Cross-Platform Mobile Development" and "Front-End Frameworks" tools respectively.

Some of the features offered by Ionic are:

  • Performance obsessed
  • Utilizes Angular and React
  • Native focused

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

  • Speeds up development
  • User Experience Focused
  • Easy to work with

"Allows for rapid prototyping", "Hybrid mobile" and "It's angularjs" are the key factors why developers consider Ionic; whereas "Google material design", "Responsive" and "Easy to use" are the primary reasons why Materialize is favored.

Ionic and Materialize are both open source tools. It seems that Ionic with 38.4K GitHub stars and 13.1K forks on GitHub has more adoption than Materialize with 36K GitHub stars and 4.79K GitHub forks.

Sellsuki, Edify, and eTobb are some of the popular companies that use Ionic, whereas Materialize is used by The3ballsoft, GeoLytix, and Avhana Health. Ionic has a broader approval, being mentioned in 392 company stacks & 350 developers stacks; compared to Materialize, which is listed in 46 company stacks and 53 developer stacks.

Advice on Ionic and Materialize
Needs advice
on
FlutterFlutterIonicIonic
and
React NativeReact Native

Hi, we are an early startup (with an iPOC prototype) but need to get started on our MVP, and our tech developers in India recommended a hybrid, and they use Ionic, then we spoke with a software company in the US and he recommended Flutter or React Native. Any advice or input for us on the differences between these? Our app will need Bluetooth GPS for "near me" and social media sharing reviews capability, and also link on the backend with businesses. Thanks in advance for any help you can give!

See more
Replies (6)
Dario Alves
Arquiteto de Software at Senior sistemas · | 2 upvotes · 488.7K views
Recommends
on
React NativeReact Native

Maturity, Community, Facility, Libs React Native is the principal platform of mobile cross-platform development today, Flutter is it's a promise.

See more
Ahmad Khan
Recommends
on
FlutterFlutter

I would never recommend you to go with Ionic, Because of the User experience it provides is subpar. Flutter is most promising, Can be easily used to develop great user experience in no time. React native is also good, but it's phasing out in my opinion, while Ionic has already phased out. Flutter also provides great developer experience, resulting in fast and productive developers. I would have to press hard to think of a CON about flutter when recommending it for your needs.

See more
Recommends
on
FlutterFlutter

Flutter is built on DART which is written in GO. GO compiles to binary. Hence is faster than any java based framework. It provides superior performance and has a simplified UI process for designing apps.

See more
Kevin Lücke
Recommends
on
FlutterFlutter

It depends also on your team skills. Flutter is fast to learn, fast to develop with and the performance is much better in comparison to React. If your team is already highly skilled in React Native it could be the better option - if not Flutter is my 100% recommendation. We rapidly prototype and deliver MVPs with Flutter since two years.

See more
Nicolas Kovacs
Recommends
on
FlutterFlutter

Even if React Native is older (I didn't say mature) you should go for Flutter, It's works really well and the developer experience is great (auto-completion, plugin etc). I spent years with React Native and now I am using Flutter and I don't regret It. Even if you have to learn a new language, It's pretty simple even more If you know some OOP, Java and Javascript ES6 syntax in some case. One other advantage is the facility to design app in Flutter, you have widgets for everything and you can adapt any design made by your designer. For example you can't make a simple custom box shadow with React-Native ...

See more
Recommends
on
IonicIonic
at

I don‘t have practical experience with flutter but between ionic and react native I‘d say both a perfectly viable options and we have used both for a number of production apps. We normally go with ionic on capacitor because we build a lot of pwa/web apps so we can use the same code for all. We don‘t use much of ionic elements, we do most styles on our own.

The comments that the user experience is bad I cannot agree with. A well designed and developed ionic apo can hardly be distinguished from a native app. But obviously that depends also on the usecase and type of app.

I hope this helps

See more
Alexis Poveda
Needs advice
on
ElectronElectronFlutterFlutter
and
IonicIonic

Hi! I have to develop a software solution for a youth church group, for my graduation project. In the first meeting that I have with the coordinators, they did not have a clear idea of what they want. The biggest problem they have is the attendance control, they do it manually and that causes errors.

I was thinking of developing an Android app in Android Studio because that is the tool I master, but a friend told me that I consider using a tool that builds for iOS, Android and web. I have like 6 months. I own a MacBookAir but I do not know Swift (for iOS). I am familiar with MySQL, PHP, Apache, JSP,HTML,CSS.

Summary: What tool can I use that is easy to learn and easy to scale?

See more
Replies (5)
Recommends
on
IonicIonic

I think you should chose between Flutter and Ionic. With those two options, the main question is about graphs and performance. Are they really important for your application? If the answer is yes, your tool is Flutter but, if the answer is that you need an easy tool to create an app with some basic components I would choose Ionic. You have a library with lots of components that you can use and they have native UI by default (for Android and iOS).

You will find more support if you use Ionic with Angular as frontend framework (you have the option to use Vue or React but this is a new feature for Ionic and I think there are more difficult to learn than Angular).

You can develop and debug the majority of features on PC (I don't know if that is possible with Flutter). And when you will finish the app, create iOS and Android versions is simple.

See more
Recommends
on
IonicIonic

It's probably not relevant anymore, but I think Ionic with Angular as the frontend is the right choice. For IDE I would choose Visual Studio Code. You can just create a basic web application with responsive design, which is already included if you are going to use Ionic components with Material Design to create your app. You don't need to know Swift, you don't even have to create mobile apps, just create a responsive (Ionic already is) web app, or PWA. Upon browsing your website from a mobile device for example using google chrome, you will be prompted to create a shortcut of the website in your mobile phone. After you do this, there will be an icon in your phone that looks like an icon to launch an app, it will launch your website in full screen mode - for the user's perspective it will look like he is using a native app. Access https://ionicframework.com/docs/angular/pwa from your android chrome browser, go to tab options (3 vertical dots), click on Add to Home screen. When you launch the website from the shortcut, you'll see that it behaves and looks like a native app.

See more
Recommends
on
FlutterFlutter

Flutter is easy to use and easy to understand. Once you have completed the android platform, you can easily build it to ios, Web or desktop on a single code base.

See more
Carlos Esteban Lopez Jaramillo
Recommends
on
IonicIonic
  1. Electron is for desktop apps, so not useful for you.
  2. Flutter has better performance, but Ionic is decent as well, I would use Ionic unless you're making a game or graphic-intensive app.
  3. Ionic is more flexible since you have the whole NPM ecosystem available, while flutter is more recent, thus libraries for it are less in quantity and battle-tested than the ones in NPM.
  4. Ionic 4 introduced CSS variables, which improved immensely the theming process for the app, which was the hardest issue Ionic development had.
  5. Ionic has extended to many frameworks so it's compatible with Angular and React frameworks, meaning more flexibility, personally I would recommend Ionic with Angular over React since it's more suited to enterprise-level apps.
See more
Alejandro Ulate Fallas
Mobile Developer at Build SRL · | 2 upvotes · 298.2K views
Recommends
on
IonicIonic

Hi there. So Electron embeds everything in a webview, which means that what you would have to develop would be a Node project most probably. Ionic does the same (kindof but won't bore you with specifics) but it does it much more efficiently. Usually you do Ionic apps with JS frameworks like Angular or React (this one recently added). Flutter on the other hand does native apps, it does it really good but it's support for Web is in beta and it's relatively simple to setup if you already know the SDK and the environment.

My recommendation would be that you do your app using Angular/Ionic if you reaaally need the multi-platform environment and there's different reasons in this case:

  • Since it's a graduation project you need it to be as simple as it can be and adding a new technology adds to the learning curve.
  • Flutter is great if you have different complex UI or if you have specific performance needs that require native support and in your case it does not seem like you need that.
  • Flutter is also an incredibly powerful tool but it's learning curve might be tricky if you have not developed native apps before so I wouldn't recommend you start off like this if you have time sensitive projects like a graduation project. It does have great docs and an awesome community but I'd suggest you stick as close to what you know as you can.
  • Ionic/Angular uses Typescript (a type javascript wrapper) and Angular (JS framework) so you will have to learn a little bit but if you already know HTML, CSS and Javascript you won't have that much of a hard time. Also there's quite a lot in terms of documentation and tooling already tested around this combination.
  • Ionic/Angular has a really good CLI that helps you stick to the architecture they recommend so you wouldn't have to worry about it that much.
  • Ionic/Angular helps you test either locally in the web browser as well as your devices which is in the end what you want if you are looking for a multi-platform system. Flutter also does this but is not quite in a stable state (yet!).

Anyway, in the end, if you go for the multi-platform suggestion I think, because of time you would be better off with Ionic. If you decide that you don't need that as of right now (which is fine as well) you can start with just the Android app and plan on the different things you might eventually need like a website or other different stuff. Cheers!

See more
Decisions about Ionic and Materialize
Thuan Nguyen
FE Lead at SOLID ENGINEER · | 5 upvotes · 613.5K views
  • Javascripts is the most populated language in the world.
  • Easy to learn & deployed production
  • Fast development
  • Strong community
  • Completed Documents
  • Native performance with lower RAM used.
  • Easy to handle native issues by using native code like Java / Objective C
  • Powered by Facebook.
See more
awesomebanana2018
Chose
FlutterFlutter
over
IonicIonic

While with Ionic it is possible to make mobile applications with only web technologies, Flutter is more performant and is easy to use if you are willing to learn Dart, which is a fun language. Plus, it has awesome documentation and, while its ecosystem isn't near as big as JavaScript's is, it has a good package manager called Pub and its packages are generally high quality.

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Ionic
Pros of Materialize
  • 248
    Allows for rapid prototyping
  • 228
    Hybrid mobile
  • 208
    It's angularjs
  • 186
    Free
  • 179
    It's javascript, html, and css
  • 109
    Ui and theming
  • 78
    Great designs
  • 74
    Mv* pattern
  • 71
    Reuse frontend devs on mobile
  • 65
    Extensibility
  • 31
    Great community
  • 29
    Open source
  • 23
    Responsive design
  • 21
    Good cli
  • 14
    So easy to use
  • 13
    Angularjs-based
  • 13
    Beautifully designed
  • 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
    Base on angular
  • 7
    So much thought behind what developers actually need
  • 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
    Responsive
  • 1
    Native access
  • 1
    Typescript support
  • 1
    Ionic conect codeigniter
  • 1
    Fast Prototyping
  • 1
    All Trending Stack
  • 102
    Google material design
  • 74
    Easy to use
  • 74
    Responsive
  • 54
    Modern looks
  • 48
    Open source
  • 42
    Good documentation
  • 37
    Code examples
  • 29
    Extremely light - 29kb
  • 28
    Flexible
  • 15
    Great Support
  • 10
    It looks beautiful
  • 8
    Very nice looking components to quickly build out
  • 7
    Smooth animation
  • 6
    Great Grid System
  • 4
    Great
  • 4
    Ruby gem to integrate in 2 seconds flat
  • 3
    Angular2 Support
  • 2
    MIT Lisence
  • 2
    Friendly api, easy setup, good documentation
  • 2
    Easy setup
  • 1
    React
  • 1
    Grid system
  • 1
    Because of the easy to use and very editable library
  • 1
    Responsivness
  • 1
    Jibberish
  • 1
    Friendly Api
  • 0
    Better class name
  • 0
    Rtl support

Sign up to add or upvote prosMake informed product decisions

Cons of Ionic
Cons of Materialize
  • 20
    Not suitable for high performance or UI intensive apps
  • 15
    Not meant for game development
  • 2
    Not a native app
  • 7
    Mobile errors
  • 6
    Poor Grid System
  • 2
    Unmaintained

Sign up to add or upvote consMake informed product decisions

- No public GitHub repository available -

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.

What is Materialize?

A CSS Framework based on material design.

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

What companies use Ionic?
What companies use Materialize?
See which teams inside your own company are using Ionic or Materialize.
Sign up for StackShare EnterpriseLearn More

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

What tools integrate with Ionic?
What tools integrate with Materialize?

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

What are some alternatives to Ionic and Materialize?
PhoneGap
PhoneGap is a web platform that exposes native mobile device apis and data to JavaScript. PhoneGap is a distribution of Apache Cordova. PhoneGap allows you to use standard web technologies such as HTML5, CSS3, and JavaScript for cross-platform development, avoiding each mobile platforms' native development language. Applications execute within wrappers targeted to each platform, and rely on standards-compliant API bindings to access each device's sensors, data, and network status.
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.
NativeScript
NativeScript enables developers to build native apps for iOS, Android and Windows Universal while sharing the application code across the platforms. When building the application UI, developers use our libraries, which abstract the differences between the native platforms.
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.
Flutter
Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.
See all alternatives