DEV Community

Cover image for 12 Reasons for Building Mobile App with Ionic Framework
Optisol Business
Optisol Business

Posted on

12 Reasons for Building Mobile App with Ionic Framework

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)

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

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

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

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

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

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

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

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

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

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

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

Top comments (0)