O. Jauregui — Catalog of Work
Index / Software · AISW-05

Doppler

A run tracker that told you which way to run to meet the rain. Retired.

A saved run — a 2.5-mile Williamsburg loop with route, elevation, and pace, shareable without an account
Fig. 1A saved run — a 2.5-mile Williamsburg loop with route, elevation, and pace, shareable without an account
Live radar with storm-cell drift and chase heading
Fig. 2Live radar with storm-cell drift and chase heading
Run feed with weather badges
Fig. 3Run feed with weather badges

Most running apps help you avoid weather. Doppler was for people who wanted to run into it — it found the rain and gave you a heading.

A PWA with a live radar map (two hours of history plus a 30-minute nowcast), storm-cell drift computed from steering winds, and a chase heading toward the nearest rain. It recorded GPS runs with weather badges, kept stats and streaks, and shared runs as URL-encoded links — no account needed. A demo mode simulated a run so the whole product worked from a desk.

The project is retired — I keep the write-up here because the mechanics were worth building: the archived build still loads, but it's no longer maintained.

Architecture

Offline-first Next.js PWA. MapLibre GL rendered animated RainViewer radar tiles; weather and steering winds came from Open-Meteo — both keyless, free APIs, so the core app ran with zero credentials and zero backend. The physics-adjacent core is where the engineering lived: storm-cell drift derived from 850 hPa steering winds (cells move toward wind direction + 180°), the chase heading computed as the reciprocal of drift, and run data URL-encoded for account-free sharing. That pure-logic core was fully unit-tested; the map shell around it stayed thin.