If you’re developing Android-based games or complex apps with extensive cloud integration, you’ll probably want to seek out native application development tools. These range from the Java-oriented Android SDK and Android Development Tools (ADT) Eclipse plugin to game-oriented engines like Corona to commercial enterprise platforms like the cloud-oriented Monaca toolsuite.
Most mobile apps, however, are simpler affairs with tight deadlines and budgets and the need to support both Android and iOS. For most app developers, especially those converting web apps to mobile, cross-platform mobile app frameworks are a better choice. And the latest mobile frameworks promise some native-like performance and functionality while still hewing to a basic “write once, run anywhere” development approach.
The open source requirement excludes some promising packages like Trigger.IO, as well as mainstays such as Microsoft’s Xamarin, based on the former Mono project. There’s also been a lot of interest in Intel XDK, which is not open source but is available in a capable free version.
I have also omitted several other programs that are either too rough around the edges, or too out of date. Let me know, however, if your favorite open source framework deserves mention.
Not surprisingly, the packages are greatly improved compared to our previous roundup of 15 mobile app frameworks back in August 2012, In recent years, mobile frameworks have benefited from the increased use of HTML5, as well as much improved components for improving native app functionality and performance. The latest frameworks also let you apply modern UI styles such as Google’s Material Design.
Only four products survived from our original list: jQuery Mobile, Kendo UI, Sencha Touch, and Titanium. The two most popular options these days are relative newcomers: Ionic and Onsen UI.
Unlike the 2012 list, this one does not include Adobe’s venerable PhoneGap, which includes Apache’s Cordova rendering package. PhoneGap is really more of a wrapper and package deployment framework rather than a full development environment. Yet, many of these programs integrate Cordova/PhoneGap and most support optional integration.
Top 10 Open Source Frameworks
Our top 10 open source mobile app frameworks are listed below in alphabetical order, with links to product pages. Unless otherwise noted, the software is available only in a free, open source version.
Framework 7 -- iDangero.us -- Since version 1.0 was released a year ago, Framework has been one of the best choices for developing iOS apps. Now that it offers Android support, it’s also a good option if you want to start with iOS, then build an Android version with an iOS like look and feel. Features include Material Design UI, native scrolling, 1:1 page animation, a custom DOM library, and XHR caching and preloading.
Ionic – Ionic – Based on the Sass CSS extension language, this popular cross-platform framework is fairly easy to use, yet it can also integrate AngularJS for building more advanced apps. Ionic offers a library of mobile-optimized HTML, CSS, and JS CSS components, gestures, and tools, and works with predefined components. A command-line interface provides features like emulators, live reload, and logging, There’s also a Cordova-based app packager.
jQuery Mobile – jQuery Foundation – Based on jQuery, this mature, lightweight framework lacks many of the advanced features of most packages here, but it still has a large, committed user base. While it offers features like semantic markup, progressive enhancement, themable design, PhoneGap/Cordova support, there’s not much here for native-like functionality and performance or advanced UI. On the other hand, its simplicity means that “write once, run anywhere” is often an achievable goal, and it’s a good choice for simple apps that also need to run on Windows Phone and BlackBerry.
Mobile Angular UI – Maurizio Casimirri – This open source project combines AngularJS and a modified version of Twitter’s Bootstrap into a mobile UI framework. It is said to retain most of Bootstrap 3’s syntax for easier web-to-mobile portability while adding mobile components missing from Bootstrap, such as switches, overlays, sidebars, scrollable areas, and fixed-positioned navbars. Libraries include fastclick.js and overthrow.js.
Onsen UI – Asial Corp. – Onsen is built on HTML and CSS, and is designed to work with PhoneGap and Cordova, which are not pre-integrated. It can also work with Angular and jQuery. As the name suggests, the program stresses UI development, and offers a wide range of web-based UI components and features, such as two-column views for tablets. (Material Design, however, is still missing.) The well-documented program is pitched at jQuery Mobile users who need ease of use but want more functionality, performance, and UI features. A drag and drop GUI tool is under development at Tokyo-based Asial, which also develops and maintains Monaca.