Brooks Groves
Featured Project View on GitHub →

USGS · Sierra Nevada · Tuolumne · Merced · Stanislaus · Bluesky · Twitter

streamchaser

"You don't chase the water. You read it."

Groveland, California sits at 2,800 feet on the western slope of the Sierra Nevada, halfway between the Central Valley floor and Yosemite Valley. The Tuolumne River runs through the canyon a thousand feet below town. Big Creek drains the hills right behind the fire station. Cherry Creek drops out of the high country from the north, cold and fast, before it meets the mainstem below.

This bot watches eleven gauges across three Sierra Nevada watersheds — simultaneously, around the clock — and says nothing unless something is worth saying. When a storm moves through the Sierra, you can watch it travel gauge by gauge, from the granite headwaters at Happy Isles and Hetch Hetchy down to the valley floor at Modesto. Monday's spike at Hetch Hetchy becomes Thursday's flood warning at Modesto.

Dual threshold systems: absolute cfs thresholds for large regulated rivers, proportional thresholds for small unregulated streams like Big Creek and Cherry Creek. Over 400 years of combined USGS record across all eleven gauges.

Python USGS NWIS GitHub Actions Bluesky API Twitter API Matplotlib
View on GitHub → Follow on Bluesky →
Gauges monitored
11
Tuolumne · Merced · Stanislaus + local tributaries
Update frequency
1hr
GitHub Actions cron · free tier · ~600 min/month
Combined USGS record
400+
years across all eleven gauges
The hometown gauge
Big Creek
no dams · pure signal · the canary in the watershed
High country canary
Cherry Ck
spikes first · drops fast · drains the granite
How a Storm Moves Through the Sierra

Reading the Hydrograph

Hours 0–6 Happy Isles & Hetch Hetchy respond first. They drain bare granite above 4,000 feet — thin soil, nowhere for the rain to go but down. When a storm hits, these show it within hours.
Hours 6–18 Cherry Creek — the high-country canary — spikes fast and drops fast. It's the warning shot for the local watershed, draining terrain that doesn't forgive. Big Creek follows close behind with no dams to buffer anything.
Hours 12–24 Grand Canyon of the Tuolumne and Early Intake catch the pulse as it consolidates in the canyon. This is where you start to see the full shape of the hydrograph forming.
Days 2–3 Pohono Bridge shows the Merced doing its own thing — Yosemite Valley floods independently of the Tuolumne, and the two watersheds don't always move together.
Days 3–5 LaGrange and Modesto tell you what the valley is actually going to receive — after the reservoirs have taken their cut, after the diversions have started, after the pulse has smoothed out over days of travel. Monday's spike at Hetch Hetchy becomes Thursday's flood warning at Modesto.
The Eleven Gauges
Gauge Watershed Character Mode
Hetch Hetchy Tuolumne Headwaters · first to spike · below O'Shaughnessy Dam Absolute
Grand Canyon Tuolumne Wild canyon reach · above valley influence Absolute
Early Intake Tuolumne Pre–Don Pedro · above Cherry Creek confluence Absolute
LaGrange Dam Tuolumne Below all major dams · what enters the valley Absolute
Modesto Tuolumne Valley floor · the bottom line for Central Valley water Absolute
Happy Isles Merced Raw Yosemite backcountry signal · above Pohono Bridge Absolute
Pohono Bridge Merced Classic Yosemite Valley gauge · spectacular in flood years Absolute
Ripon Stanislaus Valley floor · below New Melones Reservoir Absolute
Big Creek @ Whites Gulch Local The hometown gauge · no dams · pure signal · the canary Proportional
Cherry Creek NR Early Intake Local High-country canary · spikes first · drains the granite Proportional
Alert Thresholds

Large / Regulated Rivers

🟡 Elevated ≥ 200 cfs · active snowmelt or moderate storm response
🟠 High ≥ 1,000 cfs · significant flood potential — monitor closely
🔴 Flood ≥ 5,000 cfs · major flood event
📈 Peak New 7-day peak set within 2 hours

Small / Unregulated Streams

⚡ Rising ≥ 10% of historical mean per hour
📊 Above normal Current flow > p75 historical percentile
🏜 Going dry Flow < 1.0 cfs
💧 Returning Was dry yesterday, now rising
More Hydrology Work All on GitHub →

USGS · Leaflet · Sierra Nevada · Historical

💧 Sierra Streamflow Monitor

8 USGS stream gages across Sierra Nevada watersheds. Historical spaghetti charts overlay current year against the last decade. Leaflet map, weekly GitHub Actions cron.

View dashboard →

SNOTEL · NASA MODIS · Cascades · Snowpack

❄️ Rainier Snowpack Monitor

7 SNOTEL ground stations and NASA MODIS satellite data pulling hourly. Basin SWE, melt alerts, freeze-thaw cycles. The water in the river starts here.

View dashboard →

COBOL · Python · USGS · GitHub Actions · 1959 → 2026

📟 sierra-flow-cobol

A 850-line COBOL program that fetches live USGS discharge data, computes percent-of-normal, sorts by mean CFS, rolls up watershed basins, and prints a 132-column report. Built and first run on Artemis II launch day.

View project →

Stream Gauges · USGS NWIS · Rainier · Lahar

🌋 lahar-watch Stream Gauges

Four stream gauges on the Puyallup, Carbon, White River, and Nisqually drainages — monitoring for the flow anomalies that would precede a lahar from Mount Rainier.

View dashboard →