TL;DR: With very limited experience with making apps, I built a calorie counter app, using the Ionic Framework, for iOS and Android from scratch in 27 days. Both are available in AppStore and Google Play as of right now.
Context/Intro
I’m primarily a web developer, so I come from a background of js/html/css/python (because Django framework). I’ve never even formally learnt javascript, only snippets of it as I was going about my web dev work. Much less AngularJS!
The app itself is pretty basic in the sense that it runs a (I would think) common design pattern of allowing a user to interact with remote data via an API, in their native environment. But the app can do all of what the web app is capable of, so in terms of limitations, I definitely didn’t face any.
I had a web app already up and running over at recordcalories.com at the point when I started on the app using Ionic. The 27 days includes the time I spent on coding up a restful API that the app uses to interact with a remote server, and is inclusive of the time spent waiting for Apple to review my app. (Just learnt that my app needs to go through the same damned review process everytime I want to update -are there workarounds for that?)
Experience of coding a Phonegap/Ionic App
Was pleasant! Really, there were only tear-your-hair-out moments when I was trying to do something the framework hadn’t included already (no prior Angular experience, see above), or deploying to AppStore for the first time (speaks for itself). Other than that, the development process caused me to imagine working with a complete version of Ionic, and that felt very comfortable to think.
I feel that this would never have been possible without the existence of Ionic/Phonegap/Cordova. These tools allowed me to sidestep learning obj-c/swift/java/work on multiple platforms/etc without compromise (with respect to my own objectives). To me, that places Ionic in the set of tools that are great enablers of helping anyone and everyone build apps. For web developers like myself at least, that means that Ionic happens to sit in a pain-free little sweet spot.
What I would like to see in upcoming versions of Ionic
There were only a few things that bummed me out when I found out they weren’t ready yet. I know that there are smart people working on these everyday, but I’ll just take this opportunity to reinforce my general desire to see these things included in Ionic as soon as possible:
- Material design for apps built with Ionic built in to the framework.
- Sticky list headers
Thanks, Drifty!
The Ionic framework is an incredible tool. Thank you for creating it!
// I expanded on the topic a little bit with more of my thoughts in a separate blog post.