← All Work
// Case Study 02 · Closed Testing

Deathline

Your life, rendered as a grid of dots — one per week, 4,680 in total.

Closed Testing · Google Play
// The Idea

Ninety years, 4,680 weeks, one screen

Most of us think about mortality in the abstract, if we think about it at all. A number — an age, a life expectancy — doesn't really land. A grid does. Deathline takes a rough 90-year lifespan, breaks it into individual weeks, and renders every single one as its own dot: filled if it's already happened, open if it hasn't.

No countdown, no notifications, no dramatics — just a quiet, permanent visual of how much of the grid is already behind you. The idea isn't to be morbid. It's that a life measured in roughly 4,680 discrete weeks is something you can actually hold in your head, in a way "you have about 50 years left" never quite is.

// The Grid

Every week, its own dot

4,680 dots, one per week, for ninety years. Filled dots are lived; the rest are ahead of you. (Illustrative here — the real app renders this against your own birthdate.)

// Built With

Why each piece is actually there

  • react-native-skiaRenders the full 4,680-dot grid on a single custom-drawn canvas instead of thousands of native views — what actually makes a grid this dense possible on a phone.
  • Expo (Bare Workflow)Skia's native module needs it — a real architectural tradeoff made early, not Expo's default managed path.
  • React Navigation v7Screen and stack navigation.
  • ZustandLightweight global state — current view, computed week index — without Redux ceremony.
  • MMKVFast, synchronous on-device storage, chosen over AsyncStorage for speed.
React NativeExpoReact NavigationZustandMMKVreact-native-skia
// Where It Stands

Closed testing, not a public launch

Deathline is currently in closed testing on Google Play — real builds on a real test track, not a public release yet. This stage exists to validate the parts that only show up under real devices and real usage: the grid rendering smoothly across a range of hardware, the onboarding flow actually making sense on a first open, and general stability before wider distribution.

Closed Testing · Google Play
← All Work
// Let's Talk

Let's ship something that stays up.

Tell us what you're building — we'll scope it, quote it, and get moving.