There's an app for that - Kadence

February 15, 2016

alt text

Kadence - My first app in the Apple iOS App Store

First the idea

I have found the best way to have an idea for a first app is fulfill a gap in the market for app that you have discovered because you need that app.

This will allow you design the app with the user in mind because user number one will be you so unless you are a special unique flower other users may find it useful also.

In my case I required an app that would allow help me decide to choose a new bike based on chainset and cassette combinations. I wanted to find a bike that had a range somewhere between a compact road bike and mountain bike - an all-rounder that would allow me to climb steep climbs but still not spin-out when going down hills.

My requirements were:

  1. Ease of adding bikes
  2. Ease of navigation between bikes
  3. Mobility

And that’s why Kadence was created.

How it was built

Ionic

The ionic framework “is a powerful HTML5 SDK that helps you build native-feeling mobile apps using web technologies like HTML, CSS, and Javascript.” I have found that it allowed me to create my hybrid HTML5 app using a familiar tool set.

AngularJS

The AngularJS is a Javascript framework that is 100% client-side and compatible with both desktop and mobile browsers. Ionic is built upon Angular directives and components and also uses the Angular UI router for single page apps. Being familiar with AngularJS gave me an easier on-boarding for the ionic framework.

PouchDB

PouchDB “is an open-source JavaScript database inspired by Apache CouchDB that is designed to run well within the browser”. Although it enables applications to store data locally and then synchronize with CouchDB and when the application is back online I only needed the offline capability for my app.

Lessons Learned

Refactoring

Although you can fall into the refactoring <a href=”http://tumblr.jeremyjohnstone.com/post/74379505516/the-code-refactoring-trap target=”_blank”>trap</a> when creating your first app I think it’s acceptable if this is your first app and your first effort will be more a prototype rather than the finished article. The more familiar you get with Ionic the easier it will be to envisage and plan how to build your app correctly from the start.

Perseverance

If like me you are building an app in your spare time you will need a substantial amount of perseverance to see it through. But it will be worth it when you see your app live in the app store.