SlideShare a Scribd company logo
Mobile apps with JavaScript and PHP

     Ed Finkler

     Fictive Kin

     @funkatron

     http://funkatron.com

     http://joind.in/3389




Thursday, May 26, 2011
Me

     • I work on Gimme Bar (http://gimmebar.com)


     • I work on Spaz (http://getspaz.com)


     • Sometimes I write PHP, sometimes I write JavaScript




Thursday, May 26, 2011
Why JavaScript?

     • Offers the best option for cross-platform mobile dev

     • strong, diverse community, good tools

     • deployable from server or locally-installed




Thursday, May 26, 2011
Most options are JavaScript + HTML + CSS




Thursday, May 26, 2011
Strong webkit implementations on most platforms

     • iOS

     • Android

     • webOS

     • BlackBerry

     • Symbian




Thursday, May 26, 2011
Deploy on server:

     • limits your access to device functionality

     • far easier to update




Thursday, May 26, 2011
Deploy on device

     • access more platform-specific functionality

     • updating can be a pain




Thursday, May 26, 2011
Shim libraries bridge JS and device functionality

     • HP Palm webOS special case – all apps build on JS/HTML/CSS




Thursday, May 26, 2011
Options for device deployment

     • PhoneGap

     • Titanium Mobile




Thursday, May 26, 2011
PhoneGap

     • Wrapper + shim layer – very basic, works on several platforms

     • Much more flexible; lets you pick any approach for building the app

     • Potentially slower; less access to platform-specific APIs

     • http://www.phonegap.com/




Thursday, May 26, 2011
PhoneGap device API support (varies by device)

     • Accelerometer           • Geoloc

     • Camera                  • Media

     • Compass                 • Network connectivity

     • Contacts                • Notications

     • Device Info             • Storage

     • Native Events           • Plugins can add additional
                                 https://github.com/purplecabbage/
     • File                      phonegap-plugins




Thursday, May 26, 2011
PhoneGap + Your preferred approach

     • Lots of JS DOM frameworks work well in PhoneGap

         • jo (http://joapp.com)

         • jQuery Mobile (http://jquerymobile.com)

         • Enyo (http://developer.palm.com/)

         • Sencha Touch (http://www.sencha.com/products/touch/)

         • Many more!




Thursday, May 26, 2011
Titanium Mobile

     • Full-stack, access to native UI components via JavaScript. Works on Android
       and iOS.

     • Potentially faster

     • Anecdotally, can be kinda buggy

     • http://www.appcelerator.com/




Thursday, May 26, 2011
Titanium Mobile device API support

     • Similar base support to PhoneGap, plus

         • Android Calendar

         • Facebook APIs

         • Map

         • XML

         • Yahoo APIs

         • Plugins can add additional functionality; can be written in native code




Thursday, May 26, 2011
Spaz in Enyo

     • Dev in Chrome


     • Test with emulator VM


     • We can build really fast with this




Thursday, May 26, 2011
Server Side: PHP

     • You can build your server side stuff lots of ways

     • Pick what works for you and STFU

     • Some simple FWs

         • koi

         • slim

         • breeze

         • limonade

         • glue

         • flight



Thursday, May 26, 2011
RESTful implementations with JSON responses
     work best

     • Make a simple HTTP call w/ basic query data

     • respond with JSON structure

     • https://www.ibm.com/developerworks/webservices/library/ws-restful/




Thursday, May 26, 2011
FRAPI

     • A great framework for rapidly building RESTful APIs


     • Using it at Gimme Bar




Thursday, May 26, 2011
Examples!

     • WildGarlic


         • in Jo


         • in jQueryMobile + Backbone.js


         • in Enyo




Thursday, May 26, 2011
Examples!

     • FRAPI


         • api.getspaz.com




Thursday, May 26, 2011
Code from examples	

     • http://getfrapi.com


     • https://github.com/funkatron/wildgarlic


     • https://github.com/funkatron/WildGarlic-jqmobile


     • https://github.com/funkatron/Spaz-Web-APIs




Thursday, May 26, 2011
Q&A

     • Axe me


     • http://joind.in/3389




Thursday, May 26, 2011

More Related Content

PDF
Creating Mobile Apps With PHP & Symfony2
PDF
Tek13 - Creating Mobile Apps with PHP and Symfony
ODP
HTML5 as a game console
PPT
Rachel meyer sfima 2017
PDF
The Mobile Web - Fronteers 2009
PDF
Best Practices For Delivering Quality Web Experiences In A Mobile, Multi-Brow...
PDF
Intridea & open source
PPTX
How to: Reporting Issues
Creating Mobile Apps With PHP & Symfony2
Tek13 - Creating Mobile Apps with PHP and Symfony
HTML5 as a game console
Rachel meyer sfima 2017
The Mobile Web - Fronteers 2009
Best Practices For Delivering Quality Web Experiences In A Mobile, Multi-Brow...
Intridea & open source
How to: Reporting Issues

What's hot (6)

PPSX
Build automation for XPages - AUSLUG 2015
PDF
jQuery Mobile, Backbone.js, and ASP.NET MVC
PDF
Using source control for domino development - AUSLUG 2016
PDF
Anatomy of a UI Control - Extension Library Case Study
PPTX
WordPress Security for Beginners
PDF
Html5 Apps
Build automation for XPages - AUSLUG 2015
jQuery Mobile, Backbone.js, and ASP.NET MVC
Using source control for domino development - AUSLUG 2016
Anatomy of a UI Control - Extension Library Case Study
WordPress Security for Beginners
Html5 Apps
Ad

Similar to Building mobile apps with JavaScript and PHP (20)

PDF
Gaelyk - Guillaume Laforge - GR8Conf Europe 2011
KEY
Mobile ECM with JavaScript - JSE 2011
PPTX
AFNetworking
KEY
360|Flex Recap - San Jose 2010
PDF
HTML5 for mobile - DiGi Challenge for Change
PDF
Mobile app development
PPT
What is Firefox OS
PDF
Webinar Mobile ECM Apps with Nuxeo EP
PPTX
Firefox operating system
PDF
Introduction to Phonegap
KEY
Future of Mobile
KEY
DjangoSki
PPT
Cross platform mobile application development
PDF
JavaScript debugging diagnostic web tools and firefox
PDF
Mobile application development strategies
PDF
PhoneGap Talk @ Sencha Con 2010
PPTX
2011 code camp
PDF
HTML5 or Android for Mobile Development?
PDF
Tech Thursdays: Building Products
Gaelyk - Guillaume Laforge - GR8Conf Europe 2011
Mobile ECM with JavaScript - JSE 2011
AFNetworking
360|Flex Recap - San Jose 2010
HTML5 for mobile - DiGi Challenge for Change
Mobile app development
What is Firefox OS
Webinar Mobile ECM Apps with Nuxeo EP
Firefox operating system
Introduction to Phonegap
Future of Mobile
DjangoSki
Cross platform mobile application development
JavaScript debugging diagnostic web tools and firefox
Mobile application development strategies
PhoneGap Talk @ Sencha Con 2010
2011 code camp
HTML5 or Android for Mobile Development?
Tech Thursdays: Building Products
Ad

More from funkatron (11)

PDF
JavaScript for PHP Developers
PDF
Building RIAs with CodeIgniter and JavaScript
PDF
Secure PHP Development with Inspekt
PDF
JavaScript for PHP Developers
PDF
Building Desktop RIAs with JavaScript and PHP - ZendCon09
PDF
Building Desktop RIAs With PHP And JavaScript
PDF
Intro To Mvc Development In Php
PDF
Building Desktop RIAs with PHP, HTML & Javascript in AIR
PDF
Securing the PHP Environment with PHPSecInfo - OSCON 2008
PDF
Building Desktop RIAs with PHP, HTML & Javascript in AIR
PDF
Securing the PHP Environment with PHPSecInfo
JavaScript for PHP Developers
Building RIAs with CodeIgniter and JavaScript
Secure PHP Development with Inspekt
JavaScript for PHP Developers
Building Desktop RIAs with JavaScript and PHP - ZendCon09
Building Desktop RIAs With PHP And JavaScript
Intro To Mvc Development In Php
Building Desktop RIAs with PHP, HTML & Javascript in AIR
Securing the PHP Environment with PHPSecInfo - OSCON 2008
Building Desktop RIAs with PHP, HTML & Javascript in AIR
Securing the PHP Environment with PHPSecInfo

Recently uploaded (20)

PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Big Data Technologies - Introduction.pptx
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPT
Teaching material agriculture food technology
PDF
Transforming Manufacturing operations through Intelligent Integrations
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Spectroscopy.pptx food analysis technology
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Advanced Soft Computing BINUS July 2025.pdf
PDF
Sensors and Actuators in IoT Systems using pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
solutions_manual_-_materials___processing_in_manufacturing__demargo_.pdf
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Empathic Computing: Creating Shared Understanding
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Chapter 3 Spatial Domain Image Processing.pdf
Big Data Technologies - Introduction.pptx
MYSQL Presentation for SQL database connectivity
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Teaching material agriculture food technology
Transforming Manufacturing operations through Intelligent Integrations
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Spectroscopy.pptx food analysis technology
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Advanced Soft Computing BINUS July 2025.pdf
Sensors and Actuators in IoT Systems using pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Understanding_Digital_Forensics_Presentation.pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
solutions_manual_-_materials___processing_in_manufacturing__demargo_.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Empathic Computing: Creating Shared Understanding
Network Security Unit 5.pdf for BCA BBA.
How UI/UX Design Impacts User Retention in Mobile Apps.pdf

Building mobile apps with JavaScript and PHP

  • 1. Mobile apps with JavaScript and PHP Ed Finkler Fictive Kin @funkatron http://funkatron.com http://joind.in/3389 Thursday, May 26, 2011
  • 2. Me • I work on Gimme Bar (http://gimmebar.com) • I work on Spaz (http://getspaz.com) • Sometimes I write PHP, sometimes I write JavaScript Thursday, May 26, 2011
  • 3. Why JavaScript? • Offers the best option for cross-platform mobile dev • strong, diverse community, good tools • deployable from server or locally-installed Thursday, May 26, 2011
  • 4. Most options are JavaScript + HTML + CSS Thursday, May 26, 2011
  • 5. Strong webkit implementations on most platforms • iOS • Android • webOS • BlackBerry • Symbian Thursday, May 26, 2011
  • 6. Deploy on server: • limits your access to device functionality • far easier to update Thursday, May 26, 2011
  • 7. Deploy on device • access more platform-specific functionality • updating can be a pain Thursday, May 26, 2011
  • 8. Shim libraries bridge JS and device functionality • HP Palm webOS special case – all apps build on JS/HTML/CSS Thursday, May 26, 2011
  • 9. Options for device deployment • PhoneGap • Titanium Mobile Thursday, May 26, 2011
  • 10. PhoneGap • Wrapper + shim layer – very basic, works on several platforms • Much more flexible; lets you pick any approach for building the app • Potentially slower; less access to platform-specific APIs • http://www.phonegap.com/ Thursday, May 26, 2011
  • 11. PhoneGap device API support (varies by device) • Accelerometer • Geoloc • Camera • Media • Compass • Network connectivity • Contacts • Notications • Device Info • Storage • Native Events • Plugins can add additional https://github.com/purplecabbage/ • File phonegap-plugins Thursday, May 26, 2011
  • 12. PhoneGap + Your preferred approach • Lots of JS DOM frameworks work well in PhoneGap • jo (http://joapp.com) • jQuery Mobile (http://jquerymobile.com) • Enyo (http://developer.palm.com/) • Sencha Touch (http://www.sencha.com/products/touch/) • Many more! Thursday, May 26, 2011
  • 13. Titanium Mobile • Full-stack, access to native UI components via JavaScript. Works on Android and iOS. • Potentially faster • Anecdotally, can be kinda buggy • http://www.appcelerator.com/ Thursday, May 26, 2011
  • 14. Titanium Mobile device API support • Similar base support to PhoneGap, plus • Android Calendar • Facebook APIs • Map • XML • Yahoo APIs • Plugins can add additional functionality; can be written in native code Thursday, May 26, 2011
  • 15. Spaz in Enyo • Dev in Chrome • Test with emulator VM • We can build really fast with this Thursday, May 26, 2011
  • 16. Server Side: PHP • You can build your server side stuff lots of ways • Pick what works for you and STFU • Some simple FWs • koi • slim • breeze • limonade • glue • flight Thursday, May 26, 2011
  • 17. RESTful implementations with JSON responses work best • Make a simple HTTP call w/ basic query data • respond with JSON structure • https://www.ibm.com/developerworks/webservices/library/ws-restful/ Thursday, May 26, 2011
  • 18. FRAPI • A great framework for rapidly building RESTful APIs • Using it at Gimme Bar Thursday, May 26, 2011
  • 19. Examples! • WildGarlic • in Jo • in jQueryMobile + Backbone.js • in Enyo Thursday, May 26, 2011
  • 20. Examples! • FRAPI • api.getspaz.com Thursday, May 26, 2011
  • 21. Code from examples • http://getfrapi.com • https://github.com/funkatron/wildgarlic • https://github.com/funkatron/WildGarlic-jqmobile • https://github.com/funkatron/Spaz-Web-APIs Thursday, May 26, 2011
  • 22. Q&A • Axe me • http://joind.in/3389 Thursday, May 26, 2011