App Gallery

A visual tour of every screen in dminder, with design rationale and implementation notes. Choose your platform.

New in 10.0

Mini-Player

Start a sun session, then keep using the app. Browse your history, check your progress, update your profile — your timer keeps running in a compact bar at the bottom of every screen.

Tap it to expand back to the full timer. Swipe the time display to toggle between elapsed and countdown. Your session is always one tap away.

Always Accessible Swipe Countdown Background Alerts
D
7:57 elapsed
3,210 IU
New in 100.10 & 10.8

The Supplement Wizard

Setting up a daily supplement used to open with a question almost nobody can answer: how many IU? The wizard opens with the question everyone can: what do you take? Pick your product and the label math is done for you — every IU value verified against the manufacturer's own supplement facts, never guessed.

Wizard step 1 on iOS: Do you take a daily vitamin or supplement?

One human question

The flow starts with something you actually know.

Product picker on iOS listing Centrum Silver, Nature Made, Kirkland with IU per serving

Pick your product

Label-verified IU per serving under every name. “Something else” keeps the classic form.

Amount confirmation on Android: servings times IU per serving

Servings, not arithmetic

Two tablets? Tap plus. The IU total follows the label.

Missed reminders step on iOS: should an unanswered reminder count as taken?

Honest about missed reminders

You decide what an unanswered reminder means — because your blood-level estimate depends on it.

Why a wizard? Because a diary should never make you do label math — and because the difference between “assumed taken” and “confirmed taken” is real data, not a guess. The same product table and dose limits live in one shared core, so iOS and Android can never disagree.

Two entries, on purpose

A dose you took once ≠ a habit you keep

A one-time prescription bolus — a Hidroferol ampoule, say — is a fact about today. A daily D3 softgel is a rule about every day. They are genuinely different things, so the add menu now lists them as two separate items: Supplement Dose for a one-off, and Set Up Daily Supplement for a recurring schedule.

Why this section exists. In 10.8.0, every supplement entry funneled into the daily wizard — so a user who logged a single prescribed dose got a recurring daily rule instead, one that re-inflated their estimate every morning and couldn’t be deleted from History. Splitting the menu back into two items, and giving the recurring rule a home you can reach, is the fix.

History add menu on Android listing Supplement Dose and Set Up Daily Supplement as two separate items

Two clearly labeled items

From the History + menu: Supplement Dose logs one dose today; Set Up Daily Supplement starts the recurring wizard. You choose which you mean before you ever type a number.

One-off Supplement Dose form on Android with the Single Dose tab selected

One-off: logged once, deletable

The Single Dose form records a dose on today’s date and nothing more. Delete it from History and it stays gone — there’s no rule behind it to regenerate the dose tomorrow.

Settings, Daily Supplements on Android showing an active recurring schedule with a delete control

Recurring: managed in one place

Every recurring rule lives under Settings → Daily Supplements, each with a delete control — so a schedule set up by mistake is always easy to find and remove, on both iOS and Android.

The rule of thumb: took it once → Supplement Dose. Take it every day → Set Up Daily Supplement, and manage it under Settings → Daily Supplements. iOS reaches the one-off from the Home +; Android from the History + — both offer both.

dminder home screen with the Ideal Windows card showing two session times
Ideal Windows detail page with day chart and session plans
Coming Soon

Ideal Windows

One line on your home screen with today’s best times to sit out — “Your ideal sessions today (MED20) are at 9:15 AM or 3:18 PM.” Computed for your skin type from real sky conditions, with the whole session kept safely under your burn threshold.

Tap through for the full day: time-to-MED and vitamin-D rate curves, your UV ceiling, and alternative plans — including a split plan that collects more D in two shorter sittings. Follow a plan and dminder reminds you when each window starts.

Whole-Session Safety Split Plans Window Reminders
dminder Dark Mode — Home
dminder Dark Mode — Timer
New

Full Dark Mode

Every screen designed for OLED-friendly, eye-comfortable viewing. Follows your system appearance automatically — no toggle needed.

See all dark mode screens
New in 10.0

Automatic Overcast Detection

Start a timer on a cloudy day and dminder reads real-time cloud data — including separate low, mid, and high altitude layers — then sets your overcast level automatically. No more guessing with a slider.

Your vitamin D rate and burn time adjust instantly to actual sky conditions. On partly cloudy days, dminder even predicts when the sun is about to break through and sends you a notification.

Low / Mid / High Layers Sun Break Alerts Real-time Adjustment

High (cirrus) — 25% UV block

Mid (altocumulus) — 60% UV block

Low (stratus) — 85% UV block

☀️

Built Once, Runs Everywhere

All vitamin D calculations, gauge math, MED algorithms, and D-level estimation run in a shared Rust core compiled to native code on each platform. The iOS app uses SwiftUI with the Rust library via FFI; the Android app uses Jetpack Compose with JNA bindings to the same Rust crate. Zero logic duplication.