Sail window

When can I sail?

This tells you when the conditions are right to sail at one specific place, read straight from the Open-Meteo forecast and four plain gates: daylight, a sustained wind band, a gust ceiling, and a rain limit. Not a weather report... a yes or no. Days that clear every gate are windows. Read them on the page, or subscribe to them as a calendar.

Coverage is worldwide. The forecast comes from Open-Meteo, so this works for any water on Earth, not only the US. For US spots the US National Weather Service is shown as a quiet second opinion when the two sources disagree.

Live example

One spot is configured so far. It runs on live data right now:

Or put it in your calendar

Every spot publishes its windows as a calendar feed at /<slug>/calendar.ics, so the answer can sit next to the rest of your week instead of on a page you have to remember to open. Open a spot and click Subscribe to these windows.

Subscribe to it rather than downloading it. Each refetch replaces the whole feed, so windows appear and disappear as the forecast changes instead of going stale in your calendar. Events are marked free, never busy... a forecast is not a commitment. Out of season, and in a week with nothing sailable, the feed is simply empty.

Add your own spot

It is open source and built to be pointed at any water on Earth. Three steps:

  1. Add an entry to config/spots.ts with a slug, a name, the lat and lon of the water, a timezone, and your own wind band, gust ceiling, rain limit, and season. Every field is required, so each spot states its own idea of what counts as sailable.
  2. Open /your-slug. Open-Meteo needs no key and no setup, so the forecast just works from the coordinates. The calendar feed at /your-slug/calendar.ics comes with it, nothing to configure.
  3. Optionally set NWS_CONTACT in your environment. It is only used for the US National Weather Service second opinion, which the Weather Service requires a contact for. Leave it unset and US spots simply skip the second opinion; spots outside the US never use it.

An outline is optional. Give a spot a GeoJSON outline under data/ and it draws a small silhouette with a wind arrow; leave it off and the page simply renders without one. Everything else works the same.