SlideShare a Scribd company logo
1 of 19
Building Mobile-First
Apps w/ Ionic
Framework and Azure
Mobile(App) Services
LaBrina Loving
April 30, 2016
@chixcancode
Thanks to our
sponsors
Platinum
Gold
Bronze
Northern VA CodeCamp Spring 2016
Thanks to host
sponsor
Northern VA CodeCamp Spring 2016
Agenda
 Web App vs Hybrid App vs Native App
 Ionic(Who, What, When, Where, Why)
 Azure Mobile Services(Who, What, When Where, Why)
 Getting Your Environment Ready
 Ionic Components & Navigation
 Demo
 Wrap-up & Q/A
 Resources
My Life in Pictures
I was Born Here …And Now I Live Here
…And I Love These Things
Web App vs Hybrid App vs Native
The Great Conundrum
•Native apps are specific to a given mobile platform (iOS or
Android) using the development tools and language that the
respective platform supports (e.g., Xcode and Objective-C
with iOS, Eclipse and Java with Android). Native apps look
and perform the best.
•Web apps use standard web technologies—typically
HTML5, JavaScript and CSS. This write-once-run-anywhere
approach to mobile development creates cross-platform
mobile applications that work on multiple devices. While
developers can create sophisticated apps with HTML5 and
JavaScript alone, some vital limitations remain at the time of
this writing, specifically session management, secure offline
storage, and access to native device functionality (camera,
calendar, geolocation, etc.)
•Hybrid apps make it possible to embed HTML5 apps inside
a thin native container, combining the best (and worst)
elements of native and HTML5 apps.
Ionic
• Open source, mobile optimized library for HTML/JS/CSS
• Built on top of AngularJS
• Built for native Cordova apps
• “Bootstrap for mobile”
• Extends angularjs with directives such as tabs, lists, cards to
provide a “mobile” feel
• Has its own css(not to be confused with Twitter Bootstrap)
• Uses AngularJS Routing Engine
Cordova
• Open source, mobile development framework
• Allows you to use standard web technologies - HTML5,
CSS3, and JavaScript for cross-platform development
• Javascript that wraps native apis
• No need to learn new languages(Xcode, Android, etc.)
• Build once, deploy for many devices
Azure Mobile/App Services
• Azures Backend-as-a-Service(BaaS) that provides
turnkey services to support your mobile application
• Data Storage
• Offline Sync
• Authentication
• Push Notifications
• User Administration
• Dashboard/UI
• Mobile Services is currently being re-branded to App
Services to encompass more services(mobile apps is a
blade within App Services)
• There are many other BaaS platforms(Firebase, Telerik,
Amazon, etc.)
Getting Started
IONIC FRAMEWORK
• Install Visual Studio Ionic Template here
• Install Visual Studio Angularjs Intellisense here
Azure Mobile Services
• Sign up for Azure
• Create a new App Service(demo)
• Azure Service Tutorials support many flavors
• Cordova
• Android
• iOS
• Xamarin
• HTML/CSS
• Install AzureMobileClient sdk here
Running Your App
Local Browser
Emulator
Actual Device
Angular UI Router
• Routing Framework for Angularjs
• Organized into State Machines
• Template/TemplateURL
• Controller(optional)
$stateProvider
.state('home', {
url: "/home",
templateUrl: "app/home/home.html"
})
Navigation in Ionic
• Routing Framework for Angularjs
• Organized into State Machines
• Template/TemplateURL
• Controller(optional)
$stateProvider
.state('home', {
url: "/home",
templateUrl: "app/home/home.html"
})
Creating Easy Tables
 Create DB
 Create Database
 Establish Connection
 Create Table schema
 Only string, date, number, and Boolean types supported
CRUD Operations with Easy Tables
Create instance of Mobile Client
var client = new WindowsAzure.MobileServiceClient(YOURURL);
Create instance of Mobile Client
var table = client.getTable(TABLENAME);
CRUD Operations
table.read()
.insert({data})
.update({data})
.del(id: idtoDelete)
Authentication with Azure App Service
No-code authentication for the following identity providers:
 Azure Active Directory
 Facebook
 Twitter
 Google
 Microsoft Account
Demo
Resources
App Services
• Mobile Apps - https://azure.microsoft.com/en-
us/documentation/learning-paths/appservice-
mobileapps/
• Client Library - https://azure.microsoft.com/en-
us/documentation/articles/mobile-services-html-how-
to-use-client-library/
Ionic Framework
Getting started - http://ionicframework.com/
Pluralsight course from Steve Michelotti -
https://www.pluralsight.com/courses/building-mobile-
apps-ionic-framework-angularjs
Let’s be friends
Email: labrina.loving@gmail.com
Twitter: @chixcancode
Blog: http://chixcancode.com

More Related Content

What's hot

AppNotch 2.0
AppNotch 2.0AppNotch 2.0
AppNotch 2.0appnotch
 
Mobile (App) Development with Sitecore
Mobile (App) Development with SitecoreMobile (App) Development with Sitecore
Mobile (App) Development with SitecorePieter Brinkman
 
Front End Applications Using One Stop JavaScript Library from Telerik
Front End Applications Using One Stop JavaScript Library from TelerikFront End Applications Using One Stop JavaScript Library from Telerik
Front End Applications Using One Stop JavaScript Library from TelerikLohith Goudagere Nagaraj
 
Sitecore and PhoneGap - Driving Business with Mobile Apps
Sitecore and PhoneGap - Driving Business with Mobile AppsSitecore and PhoneGap - Driving Business with Mobile Apps
Sitecore and PhoneGap - Driving Business with Mobile Appscaptech
 
Windows phone 8 app using Kendo UI
Windows phone 8 app using Kendo UI Windows phone 8 app using Kendo UI
Windows phone 8 app using Kendo UI Dhananjay Kumar
 
Nathan Crone - Resume
Nathan Crone - ResumeNathan Crone - Resume
Nathan Crone - ResumeNathan Crone
 
Hybrid application development
Hybrid application developmentHybrid application development
Hybrid application developmentKnoldus Inc.
 
Android Development Tips & Tricks
Android Development Tips & TricksAndroid Development Tips & Tricks
Android Development Tips & TricksSercan Yusuf
 
2011 08-24 mobile web app
2011 08-24  mobile web app2011 08-24  mobile web app
2011 08-24 mobile web appSholto Maud
 
Angular resolver tutorial
Angular resolver tutorialAngular resolver tutorial
Angular resolver tutorialKaty Slemon
 
Building Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicBuilding Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicKadhem Soltani
 
Open Source World : Using Web Technologies to build native iPhone and Android...
Open Source World : Using Web Technologies to build native iPhone and Android...Open Source World : Using Web Technologies to build native iPhone and Android...
Open Source World : Using Web Technologies to build native iPhone and Android...Jeff Haynie
 
Azure App Service at Let's Dev This
Azure App Service at Let's Dev ThisAzure App Service at Let's Dev This
Azure App Service at Let's Dev ThisGuy Barrette
 
Ionic Auth Connect: Single Sign-on Made Easy
Ionic Auth Connect: Single Sign-on Made EasyIonic Auth Connect: Single Sign-on Made Easy
Ionic Auth Connect: Single Sign-on Made EasyIonic Framework
 
App Engine Overview @ Google Hackathon SXSW 2010
App Engine Overview @ Google Hackathon SXSW 2010App Engine Overview @ Google Hackathon SXSW 2010
App Engine Overview @ Google Hackathon SXSW 2010Chris Schalk
 

What's hot (20)

AppNotch 2.0
AppNotch 2.0AppNotch 2.0
AppNotch 2.0
 
Mobile (App) Development with Sitecore
Mobile (App) Development with SitecoreMobile (App) Development with Sitecore
Mobile (App) Development with Sitecore
 
Front End Applications Using One Stop JavaScript Library from Telerik
Front End Applications Using One Stop JavaScript Library from TelerikFront End Applications Using One Stop JavaScript Library from Telerik
Front End Applications Using One Stop JavaScript Library from Telerik
 
Sitecore and PhoneGap - Driving Business with Mobile Apps
Sitecore and PhoneGap - Driving Business with Mobile AppsSitecore and PhoneGap - Driving Business with Mobile Apps
Sitecore and PhoneGap - Driving Business with Mobile Apps
 
Windows phone 8 app using Kendo UI
Windows phone 8 app using Kendo UI Windows phone 8 app using Kendo UI
Windows phone 8 app using Kendo UI
 
Nathan Crone - Resume
Nathan Crone - ResumeNathan Crone - Resume
Nathan Crone - Resume
 
Hybrid application development
Hybrid application developmentHybrid application development
Hybrid application development
 
AEM responsive
AEM responsiveAEM responsive
AEM responsive
 
Xamarin DevOps
Xamarin DevOpsXamarin DevOps
Xamarin DevOps
 
Android Development Tips & Tricks
Android Development Tips & TricksAndroid Development Tips & Tricks
Android Development Tips & Tricks
 
Azure mobile services
Azure mobile servicesAzure mobile services
Azure mobile services
 
2011 08-24 mobile web app
2011 08-24  mobile web app2011 08-24  mobile web app
2011 08-24 mobile web app
 
Angular resolver tutorial
Angular resolver tutorialAngular resolver tutorial
Angular resolver tutorial
 
Building Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicBuilding Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and Ionic
 
Open Source World : Using Web Technologies to build native iPhone and Android...
Open Source World : Using Web Technologies to build native iPhone and Android...Open Source World : Using Web Technologies to build native iPhone and Android...
Open Source World : Using Web Technologies to build native iPhone and Android...
 
AppNotch
AppNotchAppNotch
AppNotch
 
Azure App Service at Let's Dev This
Azure App Service at Let's Dev ThisAzure App Service at Let's Dev This
Azure App Service at Let's Dev This
 
Xamarin microsoft graph
Xamarin microsoft graphXamarin microsoft graph
Xamarin microsoft graph
 
Ionic Auth Connect: Single Sign-on Made Easy
Ionic Auth Connect: Single Sign-on Made EasyIonic Auth Connect: Single Sign-on Made Easy
Ionic Auth Connect: Single Sign-on Made Easy
 
App Engine Overview @ Google Hackathon SXSW 2010
App Engine Overview @ Google Hackathon SXSW 2010App Engine Overview @ Google Hackathon SXSW 2010
App Engine Overview @ Google Hackathon SXSW 2010
 

Similar to Ionic and Azure

Hybrid mobile application with Ionic
Hybrid mobile application with IonicHybrid mobile application with Ionic
Hybrid mobile application with IonicMaulik Bamania
 
Developing a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&CordovaDeveloping a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&CordovaDamir Beylkhanov
 
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionicHybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionicErmias Bayu
 
Cross-platform Mobile Development on Open Source
Cross-platform Mobile Development on Open SourceCross-platform Mobile Development on Open Source
Cross-platform Mobile Development on Open SourceAll Things Open
 
App Services - Connecting the dots of Web Mobile and Integration_published
App Services - Connecting the dots of Web Mobile and Integration_publishedApp Services - Connecting the dots of Web Mobile and Integration_published
App Services - Connecting the dots of Web Mobile and Integration_publishedWagner Silveira
 
Hybrid Mobile Development with Apache Cordova and
Hybrid Mobile Development with Apache Cordova and Hybrid Mobile Development with Apache Cordova and
Hybrid Mobile Development with Apache Cordova and Ryan Cuprak
 
Popular App Development Frameworks used by App Developers.
Popular App Development Frameworks used by App Developers.Popular App Development Frameworks used by App Developers.
Popular App Development Frameworks used by App Developers.Techugo
 
Top Technologies to Develop Mobile Apps.pptx
Top Technologies to Develop Mobile Apps.pptxTop Technologies to Develop Mobile Apps.pptx
Top Technologies to Develop Mobile Apps.pptxGokulKanna18
 
MobApp development 01 application platform.pptx
MobApp development 01 application platform.pptxMobApp development 01 application platform.pptx
MobApp development 01 application platform.pptxsanaiftikhar23
 
Your choices for building a mobile app in 2016
Your choices for building a mobile app in 2016Your choices for building a mobile app in 2016
Your choices for building a mobile app in 2016Jad Salhani
 
Cross Platform Mobile Development
Cross Platform Mobile DevelopmentCross Platform Mobile Development
Cross Platform Mobile DevelopmentManesh Lad
 
Native - Hybrid - Web Mobile Architectures
Native - Hybrid - Web Mobile ArchitecturesNative - Hybrid - Web Mobile Architectures
Native - Hybrid - Web Mobile ArchitecturesPhong Le Duy
 
SumitK's mobile app dev using drupal as base ststem
SumitK's mobile app dev using drupal as base ststemSumitK's mobile app dev using drupal as base ststem
SumitK's mobile app dev using drupal as base ststemSumit Kataria
 
Cross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual StudioCross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual StudioMizanur Sarker
 
Xamarin COE by Mukteswar Patnaik
Xamarin COE by Mukteswar PatnaikXamarin COE by Mukteswar Patnaik
Xamarin COE by Mukteswar PatnaikMukteswar Patnaik
 
Hybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJSHybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJSZvika Epstein
 
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapBuilding Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapNick Landry
 
Xamarin cross platform
Xamarin cross platformXamarin cross platform
Xamarin cross platformGuada Casuso
 

Similar to Ionic and Azure (20)

Hybrid mobile application with Ionic
Hybrid mobile application with IonicHybrid mobile application with Ionic
Hybrid mobile application with Ionic
 
Developing a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&CordovaDeveloping a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&Cordova
 
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionicHybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
 
Building iOS app using meteor
Building iOS app using meteorBuilding iOS app using meteor
Building iOS app using meteor
 
Cross-platform Mobile Development on Open Source
Cross-platform Mobile Development on Open SourceCross-platform Mobile Development on Open Source
Cross-platform Mobile Development on Open Source
 
App Services - Connecting the dots of Web Mobile and Integration_published
App Services - Connecting the dots of Web Mobile and Integration_publishedApp Services - Connecting the dots of Web Mobile and Integration_published
App Services - Connecting the dots of Web Mobile and Integration_published
 
Hybrid Mobile Development with Apache Cordova and
Hybrid Mobile Development with Apache Cordova and Hybrid Mobile Development with Apache Cordova and
Hybrid Mobile Development with Apache Cordova and
 
Building mobile apps using meteorJS
Building mobile apps using meteorJSBuilding mobile apps using meteorJS
Building mobile apps using meteorJS
 
Popular App Development Frameworks used by App Developers.
Popular App Development Frameworks used by App Developers.Popular App Development Frameworks used by App Developers.
Popular App Development Frameworks used by App Developers.
 
Top Technologies to Develop Mobile Apps.pptx
Top Technologies to Develop Mobile Apps.pptxTop Technologies to Develop Mobile Apps.pptx
Top Technologies to Develop Mobile Apps.pptx
 
MobApp development 01 application platform.pptx
MobApp development 01 application platform.pptxMobApp development 01 application platform.pptx
MobApp development 01 application platform.pptx
 
Your choices for building a mobile app in 2016
Your choices for building a mobile app in 2016Your choices for building a mobile app in 2016
Your choices for building a mobile app in 2016
 
Cross Platform Mobile Development
Cross Platform Mobile DevelopmentCross Platform Mobile Development
Cross Platform Mobile Development
 
Native - Hybrid - Web Mobile Architectures
Native - Hybrid - Web Mobile ArchitecturesNative - Hybrid - Web Mobile Architectures
Native - Hybrid - Web Mobile Architectures
 
SumitK's mobile app dev using drupal as base ststem
SumitK's mobile app dev using drupal as base ststemSumitK's mobile app dev using drupal as base ststem
SumitK's mobile app dev using drupal as base ststem
 
Cross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual StudioCross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual Studio
 
Xamarin COE by Mukteswar Patnaik
Xamarin COE by Mukteswar PatnaikXamarin COE by Mukteswar Patnaik
Xamarin COE by Mukteswar Patnaik
 
Hybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJSHybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJS
 
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapBuilding Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
 
Xamarin cross platform
Xamarin cross platformXamarin cross platform
Xamarin cross platform
 

Recently uploaded

Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 

Recently uploaded (20)

Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 

Ionic and Azure

  • 1. Building Mobile-First Apps w/ Ionic Framework and Azure Mobile(App) Services LaBrina Loving April 30, 2016 @chixcancode
  • 3. Thanks to host sponsor Northern VA CodeCamp Spring 2016
  • 4. Agenda  Web App vs Hybrid App vs Native App  Ionic(Who, What, When, Where, Why)  Azure Mobile Services(Who, What, When Where, Why)  Getting Your Environment Ready  Ionic Components & Navigation  Demo  Wrap-up & Q/A  Resources
  • 5. My Life in Pictures I was Born Here …And Now I Live Here …And I Love These Things
  • 6. Web App vs Hybrid App vs Native The Great Conundrum •Native apps are specific to a given mobile platform (iOS or Android) using the development tools and language that the respective platform supports (e.g., Xcode and Objective-C with iOS, Eclipse and Java with Android). Native apps look and perform the best. •Web apps use standard web technologies—typically HTML5, JavaScript and CSS. This write-once-run-anywhere approach to mobile development creates cross-platform mobile applications that work on multiple devices. While developers can create sophisticated apps with HTML5 and JavaScript alone, some vital limitations remain at the time of this writing, specifically session management, secure offline storage, and access to native device functionality (camera, calendar, geolocation, etc.) •Hybrid apps make it possible to embed HTML5 apps inside a thin native container, combining the best (and worst) elements of native and HTML5 apps.
  • 7. Ionic • Open source, mobile optimized library for HTML/JS/CSS • Built on top of AngularJS • Built for native Cordova apps • “Bootstrap for mobile” • Extends angularjs with directives such as tabs, lists, cards to provide a “mobile” feel • Has its own css(not to be confused with Twitter Bootstrap) • Uses AngularJS Routing Engine
  • 8. Cordova • Open source, mobile development framework • Allows you to use standard web technologies - HTML5, CSS3, and JavaScript for cross-platform development • Javascript that wraps native apis • No need to learn new languages(Xcode, Android, etc.) • Build once, deploy for many devices
  • 9. Azure Mobile/App Services • Azures Backend-as-a-Service(BaaS) that provides turnkey services to support your mobile application • Data Storage • Offline Sync • Authentication • Push Notifications • User Administration • Dashboard/UI • Mobile Services is currently being re-branded to App Services to encompass more services(mobile apps is a blade within App Services) • There are many other BaaS platforms(Firebase, Telerik, Amazon, etc.)
  • 10. Getting Started IONIC FRAMEWORK • Install Visual Studio Ionic Template here • Install Visual Studio Angularjs Intellisense here Azure Mobile Services • Sign up for Azure • Create a new App Service(demo) • Azure Service Tutorials support many flavors • Cordova • Android • iOS • Xamarin • HTML/CSS • Install AzureMobileClient sdk here
  • 11. Running Your App Local Browser Emulator Actual Device
  • 12. Angular UI Router • Routing Framework for Angularjs • Organized into State Machines • Template/TemplateURL • Controller(optional) $stateProvider .state('home', { url: "/home", templateUrl: "app/home/home.html" })
  • 13. Navigation in Ionic • Routing Framework for Angularjs • Organized into State Machines • Template/TemplateURL • Controller(optional) $stateProvider .state('home', { url: "/home", templateUrl: "app/home/home.html" })
  • 14. Creating Easy Tables  Create DB  Create Database  Establish Connection  Create Table schema  Only string, date, number, and Boolean types supported
  • 15. CRUD Operations with Easy Tables Create instance of Mobile Client var client = new WindowsAzure.MobileServiceClient(YOURURL); Create instance of Mobile Client var table = client.getTable(TABLENAME); CRUD Operations table.read() .insert({data}) .update({data}) .del(id: idtoDelete)
  • 16. Authentication with Azure App Service No-code authentication for the following identity providers:  Azure Active Directory  Facebook  Twitter  Google  Microsoft Account
  • 17. Demo
  • 18. Resources App Services • Mobile Apps - https://azure.microsoft.com/en- us/documentation/learning-paths/appservice- mobileapps/ • Client Library - https://azure.microsoft.com/en- us/documentation/articles/mobile-services-html-how- to-use-client-library/ Ionic Framework Getting started - http://ionicframework.com/ Pluralsight course from Steve Michelotti - https://www.pluralsight.com/courses/building-mobile- apps-ionic-framework-angularjs
  • 19. Let’s be friends Email: labrina.loving@gmail.com Twitter: @chixcancode Blog: http://chixcancode.com