18

We have monetizable Mobile Application Idea, and will be building our first mobile Hybrid application.

I looked into few things and figured out that to achieve my end-to-end goal I would need:

  1. Front End UI Framework : possible options: Ionic / AngularGap [but documentation seems parse].

  2. Then I think we need to wrap it up with PhoneGap for various platforms.

  3. Have a BackEnd framework - Loopback / Parse

I have yet to look into specific documentations, but it would be very helpful to have a experienced suggestion if the path is right.

What I don't know right now:

A. What I am thinking is right and how I should proceed.

B. Ionic is an UI framework and how do I connect it with Phonegap, like how to access native features. I think I have to use angular to call Phonegap apis ?

C. If I get the front end part set, how do I call backend apis like that of loopback? through REST calls? or there are other more efficient ways to do that?

Are there simpler ways to achieve this?

Flimzy
  • 60,850
  • 13
  • 104
  • 147
Rohit Kondekar
  • 195
  • 1
  • 2
  • 7
  • phonegap is the best option and is freely available also with many plugins that may be required in your project all api information and usage you can find http://docs.phonegap.com/en/3.3.0/index.html here frontend you can use most compactible one like jquery mobile, with jquery, and all the service call you can handle it using AJAX, and according to me that will be the simplest way – Rahul Mar 04 '14 at 10:18
  • 2
    Take a look at this: http://thejackalofjavascript.com/an-end-to-end-hybrid-app/ – Arvind May 01 '14 at 15:51
  • The general rules of thumb for me in choosing how to build an app are: 1. It must add value and interaction for the user 2. Can I use my web development skills or does the app need me to learn new skills http://codegabber.com/2017/11/01/considerations-building-mobile-app/ – TexasT Jun 12 '18 at 17:58

4 Answers4

13

I am also working on mobile app for last few months. Tried lot many UI frameworks for hybrid app developmet, tried lot many server side and NOSQL DB technologies and below is my learning for UI frameworks from my experience.

  • Sencha Touch - Early entrant in hybrid app space, most known till date, best cross device support but steep learning curve as they have their own framework rules. Moreover app is bulky and run all JS to build HTML at run time which hits performance to some extent. Surely not a good idea to build whole app IN JS, if compared to HTML5.

  • jQueryMobile - Poor performance on mobile

  • BootStrap - Good UI but poor performance on mobile. It was not dev at first place with mobile in mind

  • PhoneJS - Neat / clean UI but not free for non-open-source apps.

  • Chocolate-chip UI - Light weight, native look and feel, but not well supported in cross device cases, new player and not much adoption. Surely the work done is good and hopefully it will improve in future as its backed by company.

  • Ionic Framework - Great UI framework in dev. As of now in alpha and I would not recommend or prod apps. Did some quick tests and found few issues on Android like slider does not work properly, you need to tweak something. I think, its developing fast (recently got investors funding too), so hopefully it will soon be a matured UI framework and best out of lot, but till then its just good for prototyping not prod apps.

  • LungoJS - Light-weight UI framework. Good transition, native look and feel, Good cross-phone support (Android + iPhone), Bad tab support (have UI issues on tab), Not actively maintained as developer is busy creating some new framework.

For my app, I picked up LungoJS and will eventually move to Ionic once it get matured and have decent adoption.

All of these can be used with PhoneGap / Cordova to access native device APIs and package it as mobile app.

Advice on jQuery vs Angular - Surely Angular is better option over jQuery, it makes performance (UI transitions) faster on mobile app when compared with jQuery implementation.

Hope it help.

Gaurav

http://www.linkedin.com/in/gauravdhiman

Gaurav Dhiman
  • 590
  • 5
  • 13
  • Now you can also consider MeteorJS as that now supports hybrid mobile app development too. The coolest feature of Meteor in terms of mobile ap dev is its hot code push. As an app developer you need not to update your versions on app marketplaces. You just update your app on your server and all your client apps on phones will get updated to latest version. Meteor is good, but I don't think it have already built clean UI components like Ionic. Combo of Ionic and Meteor will be best to have. – Gaurav Dhiman Apr 20 '15 at 09:55
  • I wished for the wedding of Meteor and Ionic and here they got married :-) - http://meteoric.github.io/. Not tried, but looks good. If you have tried it and have some experience with it, kindly share the same here. – Gaurav Dhiman May 20 '15 at 13:27
11

I am also trying to study Ionic framework to use with an Android app. Ionic seems to be a very good framework, but the lack of documentation is blocking me from advancing.

From what I have seen so far, it looks like Ionic+Angular already integrates Cordova. So you don't need to create a Cordova app anymore, just create an Ionic app and it has Cordova underneath it:

Did it using Ionic CLI, which uses ionic-angular-cordova-seed

About the backend, Angular provides $http and $resource for AJAX requests, take a look at the Angular documentation, I assume Ionic didn't change the way Angular makes these calls.

My conclusion: I think when Ionic becomes a more mature framework (which won't take long) with better documentation, it will be the best UI framework. From what I have seem, it looks very native with very good performance. And I still plan to keep going with it for having no better option, although it is taking me some time because there are things I still can't understand.

Lucas Garcia
  • 917
  • 7
  • 14
  • Thanks, that was helpful. One more thing I would like to ask, as you have already started with Ionic - Where does AngularJS come in? Is it a part of Ionic or they both are separate? How deep understanding of angularjs do I need to have? It seems that angularjs has quite a bit of learning curve. – Rohit Kondekar Mar 04 '14 at 22:21
  • Exactly, Ionic uses Angular for generating its views and stuff. I think you will need to understand quite a bit of Angular, you'll need to create routes for your templates using Angular, working with variables on the views, making ajax connections, pretty much everything you'll do is through Angular, Ionic is more like dealing with graphical interface and animated transitions. But differently from Ionic, you'll find a lot of good docs about angular, youtube videos... – Lucas Garcia Mar 06 '14 at 12:31
  • Thanks Lucas it's all clear to me now. – Rohit Kondekar Mar 09 '14 at 17:25
  • when i was searching for framework to work on hybrid app i started with telerikAppBuilder that comes with kindo framework but then i found ionic is much much much better framework but telerik app builder have better tools for developer and plugins so i am mixing them using telerik appbuilder as tool with ionic framework and till now it is the best i have seen yet – Ali Dec 21 '14 at 03:35
6

C. If I get the front end part set, how do I call backend apis like that of loopback? through REST calls? or there are other more efficient ways to do that?

Most backend-as-a-service solutions offers REST APIs these days. Both Parse and Loopback provide SDKs for javascript clients, wrapping the REST calls in a more friendly API.

LoopBack

If you decide to use LoopBack for your backend and AngularJS for your front-end, then you can use the loopback-angular project to automatically generate $resource services for your Models. It comes with a Grunt plugin too.

Check out loopback-example-access-control app, it is built on LoopBack + AngularJS + Ionic.

Parse

I am not very familiar with Parse, a quick search revealed these links:

Disclaimer: I am one of the LoopBack developers.

Miroslav Bajtoš
  • 9,924
  • 1
  • 36
  • 91
  • 2
    As a follow up to Miroslav's answer, here is another sample repo you might want to check out. It's [loopback/angular/ionic/phonegap sample app](https://github.com/strongloop/icars-client) – user3259256 May 15 '14 at 07:50
2

If you are looking for developing a hybrid app (phonegap + angularJS + backend), I would like to recommend Monaca. I've just recently discover it. It is very cool since it has phonegap inside its framework and its own backend. Moreover, it also has a UI framework called OnsenUI which is based on Topcoat and AngularJS.

It also provides native components to use in your hybrid apps. What is impressive about it, you don't even need to build and install your app to your device everytime during development. That's what I love the most about this.

I hope it helps since I think it is just like what you are asking for. I'm just a novice developer and I find it is very easy to use.

TKV
  • 2,325
  • 9
  • 39
  • 54
khemry
  • 585
  • 3
  • 7
  • 1
    Worth mentioning that Monaca is a paid cloud service with the free account limited to 3 projects at the time of writing. – demisx Nov 01 '14 at 05:55