Search code examples
androidcordovaionic-frameworkphonegaponsen-ui

Relation among PhoneGap, Cordova, Onsen UI/Ionic, etc. for Mobile Hybrid Applications


I am beginning my adventure in the world of mobile hybrid applications and trying to understand the basics. I am a little bit confused about the relationships among the various frameworks that are used in this world. In particular, as far as I understand:

  • Cordova is the underlying framework that converts an application written with HTML5, CSS3, etc. in a formally native app for Android, iOS and Windows Mobile.
  • PhoneGap is the framework that allows to write hybrid applications and uses Cordova underneath to generate app packages to be published to the stores
  • Onsen UI, Ionic and Vue are examples of frameworks for the frontend only (widgets, etc.), also jQuery UI can be used for the same purpose
  • Angular JS can be used for the communication between the frontend and the "server"

So far so good. The problem comes when I see that Ionic can also be used stand-alone (i.e., without PhoneGap) as a all-featured framework (frontend, "server"), using Cordova as the tool for generating "native" apps. Or, as another problem, when I see that Onsen UI can use Vue widgets and that, in its turn, can be used stand-alone.

Can you help me understanding the relations among mobile hybrid apps world?

Thanks.


Solution

  • PhoneGap is a distribution of Cordova with some added stuff. They both allow you to write HTML/CSS/JS in a mobile app.

    There are platform independent javascript frameworks like Angular, React and Vue. They are basically the way of writing javascript that doesn't suck.

    Ionic is built on Cordova, so it's like Cordova with a lot added stuff. One of that added stuff is the framework like Angular.