One API, four sky treatments, and a fallback nobody would notice.
The weather feed at OX7 changes the sky in the hero plates and one line of ambient copy. It is cached for fifteen minutes, it is fetched after first paint, and if it never arrives the page looks exactly like the season it already is.
The feed.
Source and cadence
- Source
- Met Office DataPoint, or an equivalent site-specific forecast
- Location
- OX7 — Chadlington, West Oxfordshire
- TTL
- 15 minutes
- Fetched
- After first paint, never before
- Timeout
- Two seconds, then give up quietly
What it returns
- Temperature
- Whole degrees Celsius
- Condition
- Mapped to one of five: clear, cloud, rain, wind, snow
- Wind
- Used only to decide whether the copy mentions it
- Nothing else
- No forecast, no five-day, no pressureThis is texture, not a service
What it changes
- Sky treatment
- The hero plate gradient, within the seasonal range
- Ambient copy
- One line in the header rail
- Nothing else
- No price, no availability, no legal text, no navigation
Condition into treatment.
| Condition | Icon | Sky treatment | Ambient line |
|---|---|---|---|
| Clear | sun | Open, high, the seasonal pigment at full strength | "19°C at the farm shop, and dry for now" |
| Cloud | cloud | Flattened, the seasonal pigment desaturated a step | "13°C at the farm shop, and grey with it" |
| Rain | rain | Lowered and cooled, more veil in the plate | "11°C at the farm shop, and chucking it down" |
| Wind | wind | Unchanged sky, but the hedgerow plates come forward | "9°C at the farm shop, and blowing a hoolie" |
| Snow | snow | The winter plates, regardless of the calendar season | "1°C at the farm shop, and it has settled" |
| No reading at all | the seasonal icon | The seasonal default | The seasonal default line — "Combining, weather permitting" |
The weather feed, in numbers.
Why the weather is texture and not a service.
There is an obvious temptation to build a weather page. Five-day forecast, rainfall totals, growing-degree days, a chart. It would be quite interesting and it would be entirely beside the point.
What the weather is for here is making the site feel like it is in the same place as the farm. One temperature, one condition, one line of copy that sounds like somebody standing outside. That is the whole ambition.
It also keeps the failure mode trivial. A site with a weather service has an outage when the weather service goes down. A site with a line of ambient copy has a slightly duller header, and nobody files a ticket about that.
One temperature, one condition, one line that sounds like somebody standing outside.
The weather that actually matters is on the farming pages
Rainfall, drought and the 2025 harvest are not ambient texture — they are the single largest variable in whether this farm makes any money at all. That material lives on the farming side, where it can be given the space it deserves.
The questions the weather feed gets.
Because the smallest useful change in a line of ambient copy takes about that long to happen, and because a shorter cache means more requests for no benefit anybody could perceive.
Then it is wrong for fifteen minutes and then it is right. Nothing on the site depends on it, which is the entire reason it is allowed to be a live feed at all.
No, and deliberately. The point is where the farm is, not where you are. It always says at the farm shop.
On very narrow screens the ambient line drops out of the header rail entirely, because a truncated weather line is worse than none.
Where that line actually appears.
Five lines of ambient estate state, cycling in the header rail.