Open Source · MIT · Rust

Coastal conditions,
right in your shell

Zeemist pulls live tide predictions, fog density estimates, and surf windows from NOAA and Open-Meteo Marine — no browser needed, no API key required for basic use.

Misty coastline at dawn
Quick install curl -sSL https://zeemist.cfd/install.sh | sh  or  cargo install zeemist

Everything the tide chart won't tell you

Zeemist combines three data sources into one coherent read so you can decide in seconds whether the morning session is worth it.

Tide Predictions

NOAA CO-OPS covers 3,000+ U.S. tide gauges. Harmonic predictions up to 30 days out, displayed as an ASCII chart or plain text table.

Fog Density Estimate

Combines marine boundary layer data, dew-point spread, and coastal wind shear to produce an hourly fog-likelihood score (0–10) for any lat/lon.

Wave & Swell Windows

Open-Meteo Marine data: significant wave height, peak period, and swell direction. Highlights low-wind, mid-size windows suitable for your activity.

Offline Cache

All fetched data is cached to ~/.cache/zeemist/ with configurable TTL. Works on the boat with no cell signal once data is warm.

Scriptable Output

Pass --json to get structured output for piping to jq, Waybar, or custom dashboard scripts. Stable schema across minor versions.

Profiles

Save locations as named profiles in ~/.config/zeemist/config.toml. zeemist tides --profile rodeo is all you need on your morning alias.

Common workflows

tides — San Francisco
zeemist tides --station 9414290
# NOAA station: San Francisco, CA
 
2026-05-10  Saturday
─────────────────────────────
H 05:14 5.8 ft
L 11:42 0.3 ft ↓ very low
H 18:03 4.4 ft
L 23:55 1.1 ft
 
next best window → 06:00–09:00
fog — Marin Headlands
zeemist fog --lat 37.83 --lon -122.5
 
hour score condition
──────────────────────────────
06:00 7 / 10 dense fog
07:00 6 / 10 patchy fog
08:00 3 / 10 clearing
09:00 1 / 10 clear
10:00 0 / 10 clear
 
burn-off est. ~08:15

From the blog

Zeemist v0.4 — fog modeling, JSON output, and a faster cache

The biggest release yet: a new fog-density estimator, stable --json schema, and ~60% faster cold-start on warm cache.

How Zeemist estimates coastal fog density

A look at the marine boundary layer model behind the fog score: dew-point spread, sea-surface temperature, and the role of coastal upwelling.

Migrating from WeatherAPI to Open-Meteo Marine

Why I switched data providers for the wave/swell component, what broke in the process, and why the new source is actually more accurate.

View all posts →