Toolkits for developing Hybrid Apps.

In the previous post I described about the difference between Native Apps, Web Apps, and Hybrid Apps. So if I opt for Hybrid Apps, how can I start the development?. Here is the start, with the toolkit’s required for developing Hybrid Apps.


Hybrid Apps are developed partly with the native development environment and partly in WEB language (HTML5).These are native apps with embedded HTML. They have most of the benefits of native apps. Like native apps, they live in an app store and can take advantage of the many device features available (including GPS, camera, gestures, and notifications)

The HTML, CSS and JavaScript can be developed using some of the same tools used to ​develop web apps, but you’ll probably want to use a mobile JavaScipt framework (such as jQuery Mobile), and then you’ll need a tool to take all that code and turn it into a mobile app. Converting web app into a mobile app is accomplished by wrapping the HTML, CSS and JavaScript inside a special container: usually the “web view” component provided by the standard mobile SDKs, along with some extra bits, such as JavaScript APIs to give the developer access to device features that the web view component doesn’t provide (e.g. access to the device’s GPS, camera, gestures, and notifications). Some of these wrappers expect you to use their mobile JavaScript framework, whereas others let you use whatever JavaScript framework you prefer.

Toolkit’s available : 

– Adobe AIR for HTML/JS Developers
– Alpha Anywhere
– AMPchroma
– IBM Worklight
– Intel XDK (formerly appMobi)
– KonyOne
– PhoneGap / Apache Cordova (probably the most widely used)
– Sencha Touch 2​
– Spot Specific
– The M Project
– Trigger.io​


PhoneGap / Apache Cordova is so widely used that there are services where you can upload your HTML, CSS and JavaScript, they use PhoneGap to package it into apps for various OSes, then they send the packaged apps back to you.

– appMobi PhoneGap XDK (also a web-based IDE)
– Application Craft (also a web-based IDE)
– Icenium
– Nomad (a Visual Studio extension)
– PhoneGap Build
– Tiggzi (also a web-based IDE)

Native Apps, Web Apps, and Hybrid Apps. What is the difference?

In the mobile world, terms like native app, web app and hybrid app are very common but What’s the difference? Here’s a tiny bit of explanation.

Native Apps : 
– Apps that are fully programmed in the development environment specific to each operating system.
– Stored on a device and require installation.
– Tend to have better graphics and a smooth user experience due to the interface with the device.
– Have full access to the device-specific features, including GPS, camera, gestures, and notifications.
– More expensive to develop, as they need to be developed for each specific operating system
– Take longer to develop. Maintaining apps on multiple operating systems is also expensive and time consuming.

Web Apps : 
– Apps that are written entirely with web technologies (HTML5). and the code is executed by the browser and installation is optional.
– Content is a lot more discoverable on the web.
– Platform independent.
– Use features that are available in HTML5 like the GPS, the tap-to-call feature and native features remain inaccessible.

Hybrid Apps : 
– Developed partly with the native development environment and partly in WEB language (HTML5).
– These are native apps with embedded HTML. They have most of the benefits of native apps.
– Like native apps, they live in an app store and can take advantage of the many device features available (including GPS, camera, gestures, and notifications)
– Platform independent, Increasingly rising in popularity as operating systems become more fragmented.

Conclusion : A web app will run on (almost) all smartphones, while native apps need to be developed specifically for each operating system (and even for different versions of these), and hybrids require at least the development of the native “container” that hosts the web language.

However it will depend on the project characteristics whether to opt for Native or Hybrid App but Personally, I will be opting for Hybrid apps as they combine the advantages of web and native apps separately (simplification, uniformity, flexibility, user interface adaptation) however they also combine the disadvantages of both (fragmentation, difficult maintenance, complex performance optimization, increased initial investment and costs).

So if I opt for Hybrid Apps, how can I start the development?. Here is the start, with the toolkit’s required for developing Hybrid Apps.