03 — WEB & APIS · 2026
Golfdar
Scores golf conditions 0–100 for any point on the map, 16 days out, finds your best tee window, and gives courses a weather-based tee-sheet pricing signal.
- Built
- A golf-conditions score and a tee-time pricing signal, as a site and an API.
- Stack
- Cloudflare Workers, TypeScript, Hono, Zod, Open-Meteo, OpenAPI 3.1; 438 tests.
- State
- Private preview at golfdar.com.
PREVIEW · UPDATED 2 OCT 2026
Behind an access code at golfdar.com: request access.
golfdar.com · access code requiredCarter Barnes · cloud engineer, federal Azure · Contact








What it is
It started as 'is it nice enough to play today' and ended as a product built to sell to course operators. It answers four increasingly commercial questions: what is the score now and when is today's best window; what does the week look like, up to 16 days out; which of 40 destinations is best on a day I name; and which nearby course is the best weather per dollar.
Then the one that makes it a business: a tee sheet should not be priced the same on a still 74° morning as on a 25 mph November afternoon. Golfdar produces that pricing signal for course operators, and the operator keeps control of the price.








How it works
- Runtime
- Cloudflare Workers, TypeScript in strict mode, Hono and Zod, tested with Vitest. No database; rate limiting through a Durable Object.
- Data
- Weather from Open-Meteo, 16 days out, scored on six factors (temperature, wind, rain, course wetness, comfort and daylight) and collapsed into one number.
- Golf model
- It scores a round, not an hour: two hours for nine holes, four and a half for eighteen. It remembers the last 48 hours of rain as course wetness, and accounts for frost delays and daylight to finish.
- Pricing
- Per-slot rate multipliers from 0.70 to 1.30 in 0.05 steps. It never surges a slot that scores under 70 and damps itself the further out the forecast is. Hysteresis (small forecast moves keep the previous price) lives in Workers KV when it is bound, and is a graceful no-op when it is not.
- API
- OpenAPI 3.1: /v1/index/golf, /window, /week and /best, plus nearby courses, weather per dollar and geocoding. The golfer side is keyless; pricing takes a key.
- Access
- A private preview at golfdar.com behind an access code, with a public request-access link.
By the numbers
- 16 days
- of forecast scored
- 40 destinations
- ranked against each other
- 0.70–1.30 ×
- range of price multipliers it can suggest for a tee time
- 438 tests
- passing, typecheck clean
Decisions
- 01
The value is the single score, not the forecast
Everyone gets the same forecast numbers for free. The value is the opinionated collapse to one number a golfer trusts, and the window-finding on top of it.
- 02
Prices change only when the forecast moves enough to matter
A price that flickers with every forecast refresh is unusable to an operator. The state that prevents it lives in KV, and the system degrades gracefully instead of refusing to start when KV is missing.
- 03
Gate the preview, don't hide the product
An access code with a public request link collects interested operators, which is worth more right now than traffic.
- 04
Same engine, different sport
Grill Index came first and runs the same scoring, windowing and ranking engine; Golfdar reused it rather than starting over.
