SlideShare a Scribd company logo
Tuesday, November 12, 2014
Author: Hector Iribarne @hectoriribarne
Introduction to Mobile Apps with the
Ionic Framework & AngularJS
@hectoriribarne
Main Topics
Ionic Basics
AngularJS and Cordova
Ionic Code Time!
@hectoriribarne
Ionic Basics
@hectoriribarne
What Ionic?
@hectoriribarne
Tell me more about Ionic
Ionic is an AngularJS-based framework
Ionic lets you create mobile apps using JavaScript
Ionic provides a CLI to create, build, test and deploy your apps
@hectoriribarne
Ionic - Building Blocks
@hectoriribarne
AngularJS &
Cordova
@hectoriribarne
Detour: Let’s talk about AngularJS
@hectoriribarne
HTML5 tags
<audio>
<video>
<article>
<section>
<details>
<progress>
<meter>
@hectoriribarne
HTML5 tags - Wouldn’t it be nice to have you own tags?
<myCustomTag>
<AdamTag>
<BocaJSTag>
<HectorTag>
@hectoriribarne
Angular JS - Directives
A directive is simply a function that we run on the DOM element
to give it more functionality
Directives give us the power to create our own HTML elements
Angular uses directives everywhere. ng-tags are Angular
provided directives
@hectoriribarne
Angular JS - Scopes
AngularJS uses scopes to communicate between components
Scopes are the glue between our code and what the browser
renders
When we assign a variable on a $scope, Angular makes the
variable accessible to our view automatically
@hectoriribarne
Angular JS - Dependency Injection
Dependency injection (DI) is a term for how code gets
referenced to its dependencies.
DI refers the process of us telling Angular what dependencies
we need to use and Angular resolving dependencies when we
need them.
The Angular injector subsystem is in charge of creating
components, resolving their dependencies, and providing them
to other components as requested.
@hectoriribarne
Apache Cordova
Apache Cordova is a set of device APIs that allow a mobile app
developer to access native device function such as the camera or
accelerometer from JavaScript.
Before Adobe
purchased PhoneGap
PhoneGap
After Adobe
purchased PhoneGap
Apache Cordova
Adobe PhoneGap
@hectoriribarne
Ionic Code Time!
@hectoriribarne
Install Ionic
Install npm (Node Packet Manager): https://github.
com/npm/npm or http://nodejs.org/
@hectoriribarne
Setup Ionic on
Windows
npm install -g ionic
npm install -g cordova
Setup Ionic on
Mac/Linux
sudo npm install -g ionic
sudo npm install -g cordova
@hectoriribarne
Run Ionic
@hectoriribarne
Create an App with a blank template
@hectoriribarne
Directory Structure
@hectoriribarne
Directory Structure Details
.bower, bower.json // Ionic scripts dependencies. Loads ionic
codes & makes it easier to update Ionic w/o changing your proj)
.gitignore // Files git should ignore
config.xml // Config file for Cordova
gulpfile.js // JavaScript build tool similar to Grunt
hooks/ // Cordova folder
ionic.project // Settings for ionic
package.json // Dependencies for node packages
plugins/ // Cordova plugings
scss/ // Sass folder
www/ // root of application (Most important folder)
@hectoriribarne
Launch Ionic: ionic serve
@hectoriribarne
Ionic - Build Apps (from your project directory)
iOS (iPhone emulator example)
ionic platform add ios
ionic build ios
ionic emulate ios
Android (device example)
ionic platform add android
ionic build android
adb devices
ionic run android --device
@hectoriribarne
Ionic Demo Time!
@hectoriribarne
References
http://www.ng-newsletter.com/posts/how-to-learn-angular.html
http://thejackalofjavascript.com/ionic-angularjs-and-phonegap-build/
@hectoriribarne
AngularJS Links
https://github.com/angular/angular.js/wiki/Understanding-Directives
https://github.com/angular/angular.js/wiki/Understanding-Scopes
https://github.com/angular/angular.js/wiki/Understanding-Dependency-Injection
https://github.com/angular/angular.js/wiki/Best-Practices
@hectoriribarne
Ionic Links
Basics
http://learn.ionicframework.com/
http://learn.ionicframework.com/videos/
http://learn.ionicframework.com/talks/
http://learn.ionicframework.com/formulas/
Code
http://codepen.io/ionic/public-list/
http://stackoverflow.com/questions/tagged/ionic-framework
http://ionicframework.com/docs/api/
http://ionicframework.com/tutorials/customizing-ionic-with-sass/
Views
http://ionicframework.com/docs/api/directive/ionNavView/
http://ionicframework.com/docs/api/directive/ionView/
http://ionicframework.com/docs/api/directive/ionNavBar/
IRC: http://irc.freenode.net #ionic #angularjs #cordova
Questions?
@hectoriribarne
Last but not least
@hectoriribarne
Follow us on Twitter
https://twitter.com/BrowardDrupal

More Related Content

What's hot (20)

PPTX
Hybrid mobile and Ionic
Liju Pillai
Ā 
PPTX
Ionic Framework - get up and running to build hybrid mobile apps
Andreas Sahle
Ā 
PDF
Ionic Framework
Dylan Swartz
Ā 
PPTX
IONIC - Hybrid Mobile App Development
Malan Amarasinghe
Ā 
PDF
Intro Angular Ionic
Gianvito Siciliano
Ā 
PPTX
Building mobile app with Ionic Framework
Huy Trįŗ§n
Ā 
PDF
Building Mobile Apps with Cordova , AngularJS and Ionic
Kadhem Soltani
Ā 
PPTX
Introduction to Ionic framework
Shyjal Raazi
Ā 
PDF
Creating an hybrid app in minutes with Ionic Framework
Julien Renaux
Ā 
PDF
Ionic Framework
CristiƔn CortƩz
Ā 
PDF
Creating mobile apps - an introduction to Ionic (Engage 2016)
Mark Leusink
Ā 
PPTX
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
Ermias Bayu
Ā 
PPT
Ionic Framework
Thinh VoXuan
Ā 
PDF
Hybrid app development with ionic
Wan Muzaffar Wan Hashim
Ā 
PDF
Build Consumer Apps Using Mobile SDK and Ionic Framework
Salesforce Developers
Ā 
PDF
Cross Platform Mobile Apps with the Ionic Framework
Troy Miles
Ā 
ODP
Use Ionic Framework to develop mobile application
Lucio Grenzi
Ā 
PDF
Ionic event: March 2021
Ionic Framework
Ā 
PPTX
Workshop on Hybrid App Development with Ionic Framework
Aayush Shrestha
Ā 
PDF
Ionic framework one day training
Troy Miles
Ā 
Hybrid mobile and Ionic
Liju Pillai
Ā 
Ionic Framework - get up and running to build hybrid mobile apps
Andreas Sahle
Ā 
Ionic Framework
Dylan Swartz
Ā 
IONIC - Hybrid Mobile App Development
Malan Amarasinghe
Ā 
Intro Angular Ionic
Gianvito Siciliano
Ā 
Building mobile app with Ionic Framework
Huy Trįŗ§n
Ā 
Building Mobile Apps with Cordova , AngularJS and Ionic
Kadhem Soltani
Ā 
Introduction to Ionic framework
Shyjal Raazi
Ā 
Creating an hybrid app in minutes with Ionic Framework
Julien Renaux
Ā 
Ionic Framework
CristiƔn CortƩz
Ā 
Creating mobile apps - an introduction to Ionic (Engage 2016)
Mark Leusink
Ā 
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
Ermias Bayu
Ā 
Ionic Framework
Thinh VoXuan
Ā 
Hybrid app development with ionic
Wan Muzaffar Wan Hashim
Ā 
Build Consumer Apps Using Mobile SDK and Ionic Framework
Salesforce Developers
Ā 
Cross Platform Mobile Apps with the Ionic Framework
Troy Miles
Ā 
Use Ionic Framework to develop mobile application
Lucio Grenzi
Ā 
Ionic event: March 2021
Ionic Framework
Ā 
Workshop on Hybrid App Development with Ionic Framework
Aayush Shrestha
Ā 
Ionic framework one day training
Troy Miles
Ā 

Viewers also liked (10)

PPTX
Introdução AngularJs
GDGFoz
Ā 
PPTX
Introduction to AngularJS Framework
Raveendra R
Ā 
PDF
Introducción a AngularJS
Marcos Reynoso
Ā 
ODP
Angular js up & running
Junaid Baloch
Ā 
PDF
AngularJS - A Powerful Framework For Web Applications
Idexcel Technologies
Ā 
PDF
Discover AngularJS
Fabien Vauchelles
Ā 
PDF
NodeJS: the good parts? A skeptic’s view (jax jax2013)
Chris Richardson
Ā 
PPT
Nodejs Event Driven Concurrency for Web Applications
Ganesh Iyer
Ā 
PDF
NodeJS for Beginner
Apaichon Punopas
Ā 
PDF
Anatomy of a Modern Node.js Application Architecture
AppDynamics
Ā 
Introdução AngularJs
GDGFoz
Ā 
Introduction to AngularJS Framework
Raveendra R
Ā 
Introducción a AngularJS
Marcos Reynoso
Ā 
Angular js up & running
Junaid Baloch
Ā 
AngularJS - A Powerful Framework For Web Applications
Idexcel Technologies
Ā 
Discover AngularJS
Fabien Vauchelles
Ā 
NodeJS: the good parts? A skeptic’s view (jax jax2013)
Chris Richardson
Ā 
Nodejs Event Driven Concurrency for Web Applications
Ganesh Iyer
Ā 
NodeJS for Beginner
Apaichon Punopas
Ā 
Anatomy of a Modern Node.js Application Architecture
AppDynamics
Ā 
Ad

Similar to Intro to mobile apps with the ionic framework & angular js (20)

PDF
Cross Platform Mobile Apps with the Ionic Framework
Troy Miles
Ā 
PPTX
Ionic Mobile Applications - Hybrid Mobile Applications Without Compromises
Jacob Friesen
Ā 
PDF
Developing ionic apps for android and ios
gautham_m79
Ā 
PDF
Ionic2 First Lesson of Four
Ahmed Mahmoud Kesha
Ā 
PDF
HTML5 App Skills for Android Developers
DroidConTLV
Ā 
PPTX
Introduction to Ionic (SB AngularJS Meetup)
Sol Tran
Ā 
PPTX
Intro to Ionic for Building Hybrid Mobile Applications
Sasha dos Santos
Ā 
PPTX
Listfy Sprint #0
Riderman Sousa
Ā 
PDF
Ionic
Yasmine Gaber
Ā 
PPTX
Developing Hybrid Applications with IONIC
Fuat Buğra AYDIN
Ā 
PDF
Ionic - Revolutionizing Hybrid Mobile Application Development
Justin James
Ā 
PDF
Ionic
Yauheni Nikanovich
Ā 
PPTX
Ionic framework
Software Infrastructure
Ā 
PPTX
Angularjs Tutorial for Beginners
rajkamaltibacademy
Ā 
PDF
Crash Course in AngularJS + Ionic (Deep dive)
ColdFusionConference
Ā 
PDF
Ionic Hybrid Mobile Application
Al Sayed Gamal
Ā 
PPTX
Rapid mobile app development using Ionic framework
Swaminathan Vetri
Ā 
PDF
Workshop Ionic Framework - CC FE & UX
JWORKS powered by Ordina
Ā 
PDF
Tutorial: Develop Mobile Applications with AngularJS
Philipp Burgmer
Ā 
Cross Platform Mobile Apps with the Ionic Framework
Troy Miles
Ā 
Ionic Mobile Applications - Hybrid Mobile Applications Without Compromises
Jacob Friesen
Ā 
Developing ionic apps for android and ios
gautham_m79
Ā 
Ionic2 First Lesson of Four
Ahmed Mahmoud Kesha
Ā 
HTML5 App Skills for Android Developers
DroidConTLV
Ā 
Introduction to Ionic (SB AngularJS Meetup)
Sol Tran
Ā 
Intro to Ionic for Building Hybrid Mobile Applications
Sasha dos Santos
Ā 
Listfy Sprint #0
Riderman Sousa
Ā 
Ionic
Yasmine Gaber
Ā 
Developing Hybrid Applications with IONIC
Fuat Buğra AYDIN
Ā 
Ionic - Revolutionizing Hybrid Mobile Application Development
Justin James
Ā 
Ionic framework
Software Infrastructure
Ā 
Angularjs Tutorial for Beginners
rajkamaltibacademy
Ā 
Crash Course in AngularJS + Ionic (Deep dive)
ColdFusionConference
Ā 
Ionic Hybrid Mobile Application
Al Sayed Gamal
Ā 
Rapid mobile app development using Ionic framework
Swaminathan Vetri
Ā 
Workshop Ionic Framework - CC FE & UX
JWORKS powered by Ordina
Ā 
Tutorial: Develop Mobile Applications with AngularJS
Philipp Burgmer
Ā 
Ad

More from Hector Iribarne (12)

PDF
Content migration - CSV to Drupal 8
Hector Iribarne
Ā 
PDF
Getting started with Drupal 8
Hector Iribarne
Ā 
PDF
Drupal Camp Atlanta 2015 - No Code Content Migration
Hector Iribarne
Ā 
PPT
Drupalcamp South Florida 2012 - Introduction to Drupal Commerce
Hector Iribarne
Ā 
PDF
Drupal camp South Florida 2011 - Introduction to the Aegir hosting platform
Hector Iribarne
Ā 
PDF
Building community sites 2014
Hector Iribarne
Ā 
PDF
Drupal 7 - No code content migration
Hector Iribarne
Ā 
PDF
Drupal content automation with migrate 2.6
Hector Iribarne
Ā 
PPT
Installing BOA on Ubuntu 12.04 LTS
Hector Iribarne
Ā 
PPT
Drupal 8 - a peek under the hood
Hector Iribarne
Ā 
PDF
DrupalCon chicago 2011 summary
Hector Iribarne
Ā 
PPT
Drupal con sf 2010 summary
Hector Iribarne
Ā 
Content migration - CSV to Drupal 8
Hector Iribarne
Ā 
Getting started with Drupal 8
Hector Iribarne
Ā 
Drupal Camp Atlanta 2015 - No Code Content Migration
Hector Iribarne
Ā 
Drupalcamp South Florida 2012 - Introduction to Drupal Commerce
Hector Iribarne
Ā 
Drupal camp South Florida 2011 - Introduction to the Aegir hosting platform
Hector Iribarne
Ā 
Building community sites 2014
Hector Iribarne
Ā 
Drupal 7 - No code content migration
Hector Iribarne
Ā 
Drupal content automation with migrate 2.6
Hector Iribarne
Ā 
Installing BOA on Ubuntu 12.04 LTS
Hector Iribarne
Ā 
Drupal 8 - a peek under the hood
Hector Iribarne
Ā 
DrupalCon chicago 2011 summary
Hector Iribarne
Ā 
Drupal con sf 2010 summary
Hector Iribarne
Ā 

Recently uploaded (20)

PPT
MergeSortfbsjbjsfk sdfik k
RafishaikIT02044
Ā 
PPTX
Migrating Millions of Users with Debezium, Apache Kafka, and an Acyclic Synch...
MD Sayem Ahmed
Ā 
PPTX
MiniTool Power Data Recovery Full Crack Latest 2025
muhammadgurbazkhan
Ā 
PDF
Thread In Android-Mastering Concurrency for Responsive Apps.pdf
Nabin Dhakal
Ā 
PPTX
computer forensics encase emager app exp6 1.pptx
ssuser343e92
Ā 
PPTX
3uTools Full Crack Free Version Download [Latest] 2025
muhammadgurbazkhan
Ā 
PPTX
Revolutionizing Code Modernization with AI
KrzysztofKkol1
Ā 
PDF
LPS25 - Operationalizing MLOps in GEP - Terradue.pdf
terradue
Ā 
PDF
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
Ā 
PDF
Beyond Binaries: Understanding Diversity and Allyship in a Global Workplace -...
Imma Valls Bernaus
Ā 
PDF
GridView,Recycler view, API, SQLITE& NetworkRequest.pdf
Nabin Dhakal
Ā 
PDF
Mobile CMMS Solutions Empowering the Frontline Workforce
CryotosCMMSSoftware
Ā 
PPTX
Automatic_Iperf_Log_Result_Excel_visual_v2.pptx
Chen-Chih Lee
Ā 
PDF
From Chaos to Clarity: Mastering Analytics Governance in the Modern Enterprise
Wiiisdom
Ā 
PDF
Laboratory Workflows Digitalized and live in 90 days with Scifeon“s SAPPA P...
info969686
Ā 
PPTX
A Complete Guide to Salesforce SMS Integrations Build Scalable Messaging With...
360 SMS APP
Ā 
PDF
Alarm in Android-Scheduling Timed Tasks Using AlarmManager in Android.pdf
Nabin Dhakal
Ā 
PPTX
How Apagen Empowered an EPC Company with Engineering ERP Software
SatishKumar2651
Ā 
PDF
Difference Between Kubernetes and Docker .pdf
Kindlebit Solutions
Ā 
PDF
Linux Certificate of Completion - LabEx Certificate
VICTOR MAESTRE RAMIREZ
Ā 
MergeSortfbsjbjsfk sdfik k
RafishaikIT02044
Ā 
Migrating Millions of Users with Debezium, Apache Kafka, and an Acyclic Synch...
MD Sayem Ahmed
Ā 
MiniTool Power Data Recovery Full Crack Latest 2025
muhammadgurbazkhan
Ā 
Thread In Android-Mastering Concurrency for Responsive Apps.pdf
Nabin Dhakal
Ā 
computer forensics encase emager app exp6 1.pptx
ssuser343e92
Ā 
3uTools Full Crack Free Version Download [Latest] 2025
muhammadgurbazkhan
Ā 
Revolutionizing Code Modernization with AI
KrzysztofKkol1
Ā 
LPS25 - Operationalizing MLOps in GEP - Terradue.pdf
terradue
Ā 
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
Ā 
Beyond Binaries: Understanding Diversity and Allyship in a Global Workplace -...
Imma Valls Bernaus
Ā 
GridView,Recycler view, API, SQLITE& NetworkRequest.pdf
Nabin Dhakal
Ā 
Mobile CMMS Solutions Empowering the Frontline Workforce
CryotosCMMSSoftware
Ā 
Automatic_Iperf_Log_Result_Excel_visual_v2.pptx
Chen-Chih Lee
Ā 
From Chaos to Clarity: Mastering Analytics Governance in the Modern Enterprise
Wiiisdom
Ā 
Laboratory Workflows Digitalized and live in 90 days with Scifeon“s SAPPA P...
info969686
Ā 
A Complete Guide to Salesforce SMS Integrations Build Scalable Messaging With...
360 SMS APP
Ā 
Alarm in Android-Scheduling Timed Tasks Using AlarmManager in Android.pdf
Nabin Dhakal
Ā 
How Apagen Empowered an EPC Company with Engineering ERP Software
SatishKumar2651
Ā 
Difference Between Kubernetes and Docker .pdf
Kindlebit Solutions
Ā 
Linux Certificate of Completion - LabEx Certificate
VICTOR MAESTRE RAMIREZ
Ā 

Intro to mobile apps with the ionic framework & angular js