Hey folks, I’m back to talk about an app project from my day job.

A prototype website and companion app for a rewards scheme that allowed users to get discounts when they shopped at participating retailers as well as donating a portion to a charitable organization of their choice.

My team and I built the frontend, while a sister team worked on the backend.

The stack

The team moved ahead with Angular augmented with Apache Cordova to get a native-feeling app with minimal changes.

Bringing these platforms together was a little interesting but my prior experience with Apache Cordova led me to use it’s hooks system to wire up an effective modular build chain.

Because this was my teams’ first major project with Angular – and since it was just a prototype – it really was a learning experience.

I’ve since spent a lot more time with Angular and there are definitely some rough edges here!

The result

The final product implemented both the user frontend and admin panel in Angular.

These screenshots show the Android app running on real hardware.

User login was via OAuth which required an in-app browser window to load the login page.

As a user of the scheme you could view your points, what you’d spent to earn them, as well as bring up a QR code in the app to scan at retail stores.

Organization owners could also create vouchers with their accrued points to redeem at participating retailers.

The admin functions allowed user and retailer management, various CMS functions like editing banners and FAQs, and some deeper backend functions like viewing logs.


That’s all folks.