12 Reasons for Building Mobile App with Ionic Framework
Tags: angular, javascript, angluarjs, aws
Published: 2020-04-10 09:12:29

Ionic’s ultimate goal is to make it easier to develop native mobile apps with HTML5, also known as Hybrid apps.
Ionic is a UI framework built on HTML/JavaScript/CSS. It contains built in widgets (UI Elements) and styling (Android, IOS, Windows) customization for your UI Elements. The Styling allows you to create UI Elements which mimic the Native experience of the platform.

1. Best Friend with AngularJS

Ionic provides a set of Angular directives (custom HTML elements) for it’s own components, making it as easy to use the widgets as writing a line of HTML code. In addition to directives, Ionic uses Angular’s touch recognizers, view animation logic, HTML sanitation, and asynchronous communication.

CSS Generated By Sass

a) Quickly give your app its own look and fee
b) CSS designed to be easily overridden
c) Either override ionic.css or use Sass Pre-processor
d) Stand-alone CSS (independent of Ionic’s JavaScript)

2. Performance Obsessed

a) Hardware accelerated animations
b) Minimal DOM Manipulation
c) Zero jQuery (you could still include it if you want)

Beautifully Designed

a) Cohesive visual system
b) Clean and simple
c) Easy to customize

Ionicons

a) Over 600 MIT licensed font-icons included
b) ionicons.com

3. Complex Lists

a) AngularJS Directive
b) Buttons exposed by swiping
c) Reorder
d) Delete
e) The ionList and ionItem directives make it easy to support various 
   interaction modes such as swipe to edit, drag to reorder and removing 
   items.

4. List: Collection Repeat

a) Similar to Angular’s ng-repeat
b) Scroll through thousands of items
c) Only renders the viewable items
d) Smooth jank-free scrolling
e) Low memory footprint
f) The List is a widely used interface element in almost any mobile app, and can 
   include content ranging from basic text all the way to buttons, toggles, icons 
   and thumbnails.

5. Tabs

a) Nested views
b) Each tab has its own nav history
c) Powers a multi-tabbed interface with a Tab Bar and a set of “pages” that can 
   be tabbed through.
d) For iOS, tabs will appear at the bottom of the screen. For Android, tabs will 
   be at the top of the screen, below the nav-bar.

6. Side Menu

a) The side menu is a great way to display content without losing a lot of screen 
   real estate.
b) A container element for side menu(s) and the main content.
c) Allows the left and/or right side menu to be toggled by dragging the main 
   content area side to side.
d) To automatically close an opened

7. Action Sheet

a) Action sheets are a very useful way of providing contextual actions on a 
   component.
b) The Action Sheet is a slide-up pane that lets the user choose from a set of 
   options.
c) Dangerous options are highlighted in red and made obvious.
d) These action sheets are shown when certain elements on tapped or in many 
   cases, long tapped.
e) In Ionic, action sheets support multiple buttons, including destructive and 
   cancel operations, in a simple interface.

8. Pull to Refresh

a) Allows you to add pull-to-refresh to a ScrollView.
b) Adding pull-to-refresh functionality to a list is easy in Ionic.
c) You can easily add pull to refresh capabilities to your scroll area that 
   includes a default icon and animation.

9. Navigation

a) Shows back button when possible.
b) Each tab has its own history
c) Works with Android’s back
d) An additional benefit to Ionic’s navigation system is its ability to manage 
   multiple histories.

10. Navigation: Angular UI Router

a) Ionic uses the AngularUI Router module so app interfaces can be organized into 
   various “states”.
b) Like Angular’s core $route service, URLs can be used to control the views
c) However, the AngularUI Router provides a more powerful state manager in that 
   states are bound to named, nested and parallel views allowing more than one 
   template to be rendered on the same page

11. UI and Theming

a) When it comes to UI, Ionic shows its potential.Ionic’s true beauty is its 
   simplicity.
b) It uses the existing HTML5 and CSS3 capabilities to deliver fast experiences.
c) The speed is exactly in its simplicity – no unnecessary shadows, rounded 
   corners, gradients but just flat, clean simple, powerful, unadulterated HTML5.

12. What Does it Include?

a) A comprehensive set of UI Components – tabs, headers, navigation, modal, 
   toggle, checkbox, radio, action sheet, loading, slide boxes, cards, range etc.
b) Icon Pack – Ionic has a large set of icons to be used with your mobile apps 
   easily, including some animated
c) Automatic Transitions based on History – Ionic will transition views to slide 
   left and right automatically based on history.
d) Gestures – Ionic incorporates the popular js to provide gesture support for 
   things like tap, swipe, drag etc.
e) UI Interaction Handling – via AngularJS extensions (i.e.: handling when a tab 
   is clicked, shown or hidden).
f) Full Screen Apps – via the use of the Cordova status bar plugin to remove the 
   status bar.
g) Customizable Theme – since the Ionic base theme was built with Sass for the 
   resulting CSS, you can easily go in and customize it to create your own theme. 
   The base look is more of an iOS7 flat look but can be changed as desired.