Ionic directives VS Angular material directives with Ionic Framework
JavascriptAngularjsIonic FrameworkIonic2Material DesignJavascript Problem Overview
I want to use ionic with material design. I am stuck between using ionic directives with custom CSS and angular-material
I have read that using ionic directives we get lot of efficient features like
-
App data is remembered with UI-router, even after navigating to other view and coming back to the page
-
Ionic list items are rendered only up to display height and reused when scrolling down or up
and a lot of performance improvements.
But, if I use ionic directives they don't have the material design.
If I use angular-material I will not have these performance improvements, and extra features needed for a mobile application.
Angular-material directives are like
<md-list>
<md-item ng-repeat="item in items">
Hello, {{item}}!
</md-item>
</md-list>
Ionic directives are like
<ion-list>
<ion-item ng-repeat="item in items">
Hello, {{item}}!
</ion-item>
</ion-list>
Looks like Ionic is funding angular-material project development, then why is angular-material not compatible to use with ionic?
How can I use angular-material components without losing the performance improvements and features of ionic?
OR
is there a better idea for using material design with ionic?
Javascript Solutions
Solution 1 - Javascript
I found a material design CSS framework known as Materializecss. It looks promising. It's just plain CSS and javascript framework.
Advantages over other frameworks
-
Pure CSS classes, will not conflict with ionic directives. No performance loss.
-
Of all the frameworks I have seen, this is the only one closely following material design rules
-
Almost ready it has about 50+ contributors it's current Version 0.95.3 in less than 6 months
-
Easy to use. Well documented with feature wise navigation.
-
It has almost all the material design features needed for an app.
This page http://materializecss.com/getting-started.html will show you how to include it in your projects.
I hope this helps for any of you searching for a good material design framework.
UPDATE: 2015-07-09
I Found another lightweight powerful beautiful CSS framework for material design
Material Design Light http://www.getmdl.io/
It is lightweight, has smooth and quick animations, looking pretty good. It was made by one of the Google developers. It is officially promoted by google https://developers.google.com/web/. It is getting quite popular, try it. Comparision with Angular Material
UPDATE: 2015-10-23
Ionic2 has InBuilt Support for Material Design in Android
It's Official, You can watch Ionic2 demo in AngularConnect, It has Material Design as default for Android. We don't need to worry about choosing a Material Design framework.
Solution 2 - Javascript
There is a fairly new project called Ionic Material.
I've tried it out and it works pretty well, but be advised that it is still in "Pre-Release Preview" mode.
According to the github repo it should enter Alpha in April 2015.
It can be installed with bower
bower install ionic-material
That's pretty much all you need to do, but be warned, there are bugs and the documentation is basically non-existent.
Good luck!
Solution 3 - Javascript
Ionic Material and Ionic Material Design Lite are two budding new libraries that aim to be an extension of ionic framework. Though a little immature, works well with ionic components and supports the material theming well.
This probably could give more of an insight.