Skip to content

An iOS app for organising your own collection of Nespresso coffee capsules and tracking caffeine consumption.

Notifications You must be signed in to change notification settings

lukebettridge/pod

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Pod: Coffee Capsules

Pod offers detailed information about the entire range of Nespresso coffee capsules. Organise your own collection of capsules within the app, stored safely in iCloud. Automatically record your water and caffeine consumption in the Health app.

Implementation

UI

The user interface is built almost entirely using SwiftUI with the UIKit App Delegate to manage its life cycle.

Firebase

The app relies on a Firebase Cloud Firestore Database which stores the capsule information. Firestore offers offline support, caching the majority of the dataset on-device.

Google Cloud Storage is used to store assets such as capsule images and Firestore backups. Firestore capsule entries reference the relevant object keys for related assets. These assets are also stored on-device.

Firebase Cloud Functions are used to collate analytical data captured by Google Analytics. This allows Pod to display the most popular and most favourited capsules back to the user. These functions are run daily, making SQL queries to BigQuery, and storing the collated data as Firebase Remote Config parameters. The repository for these Cloud Functions can be found here: lukebettridge/pod-functions.

Data

The capsule information itself is collected manually via the Firestore UI or a self-built form within a small Next.js application behind Firebase SMS Authentication. The repository for this can be found here: lukebettridge/pod-web.

Screenshots

Collection Capsule Search Explore Trends

About

An iOS app for organising your own collection of Nespresso coffee capsules and tracking caffeine consumption.

Resources

Stars

Watchers

Forks

Languages