Technical record
Half-Life is a local-first iOS app built with Expo and React Native that helps make sense of caffeine intake against sleep timing, modelled as first-order decay: A(t) = A₀ · e^(−0.693t / t½).
HealthKit access is user-triggered and only feeds suggestions — it never silently overwrites a manually-set sleep or wake time, and raw sleep samples are never persisted or synced to the cloud. Supabase is optional account/sync only; the core logging flow works fully local-first.
The architecture deliberately runs on the stable React Native core — Skia, Reanimated, and Worklets were removed after they proved to be a recurring source of build fragility, and stability now takes priority over animation ceiling. The decay model itself is exposed through a Python service, and the simulator below calls that live endpoint. A signed 1.0.4 (6) release archive is built and locally exported; device acceptance and TestFlight remain open.
TECH STACK
SYSTEM SPECS
SYSTEM ARCHITECTURE
DECAY SIMULATOR — LIVE ENDPOINT
The curve higher up the page is drawn from fixed numbers to show the mechanic. This one posts to the Python service and plots the response — the same /api/decay the app calls.