This post is part of the Singapore Breathe Development Diary Series.

I’m starting work on a small app that will be part of my Singapore App Series. It’ll be called Singapore Breathe and it’s an air quality monitor that pulls data—Pollutant Standards Index (PSI) and (hourly) Particulate Matter (PM2.5)—from the National Environment Agency’s API1.

It’ll be available on Apple Watch and iOS devices. (It’ll also be available on macOS, but only because I won’t be enabling that restriction on the App Store.) Additionally, Singapore Breathe will be written in SwiftUI and the core portions will be open source2.

The GitHub repository is here and I’ve done some (very) early work on the models and decoding tests.

My aim is to publish new development diaries every week or so.

  1. Helpfully, this API doesn’t require any authentication. ↩︎

  2. I am thinking of adding push notifications in the future which would alert users when the air quality reaches unhealthy levels during haze season. However, push notifications will require a server and API keys. Those items will not be open sourced. ↩︎