DEV Community

niixolabs
niixolabs

Posted on

We shipped a weather app that learns your personal cold threshold — no ML, just percentiles

There's a gap between knowing the temperature and knowing whether to grab a coat. 14°C means very different things depending on whether you run cold, dress light year-round, or fall sick every season change. Generic forecast apps don't capture that.

Samukunai — 'are you cold?' in Japanese — is Niixo's attempt to close that gap without reaching for a machine learning model.

How it works

After stepping outside, you tap one of three options: 'felt cold,' 'felt fine,' or 'felt warm.' After 10 of those taps, an on-device statistics module we call ComfortEngine computes your personal 75th and 25th percentile comfort thresholds.

From that point forward, your morning push notification shifts from '14°C' to 'on the cold side for you' — or 'about right' — based on where today's forecast lands in your personal range. Processing stays on-device via SwiftData, with CloudKit sync across devices. Weather data comes from WeatherKit.

What we're honest about

Until you hit 10 taps, the experience is strictly worse than a standard weather app. You get less functionality without the personalization that justifies the extra interaction. No home screen widget yet. iOS 26+ only, which is a real constraint given where adoption sits today.

We shipped it anyway. The core problem — cold-tolerance is personal, raw temperature numbers don't capture it — doesn't disappear because the MVP has rough edges. Pure percentile statistics turned out to be a clean enough approach that we could ship without server-side inference or training data.

The stack

WeatherKit handles real-time conditions. SwiftData + CloudKit manages persistence and cross-device sync. ComfortEngine is a local statistics module — the one novel piece, with no external dependencies. The UI runs iOS 26 Liquid Glass.

Free. No ads. No in-app purchases.

https://apps.apple.com/jp/app/id6762537476

Top comments (0)