About Forecast Arabia
Every other site in this network reads a national service. This one reads none, because there is none to read. Forecast Britain reads the Met Office, Forecast Poland reads IMGW-PIB, Forecast Swiss reads MeteoSwiss. Here all seventeen services in the frame were checked one at a time, and not one publishes reusable gridded model output — the scan is on /sources. Israel's IMS has a real free API for station observations and Türkiye's MGM has an undocumented, unlicensed JSON endpoint. The rest is web pages.
So the models are global, and two design consequences follow. There are no per-country domains: one frame, 24–65°E and 11–43°N, Türkiye and Cyprus down to Socotra and the Gulf of Aden. A Shamal is born over Iraq and ends in Oman, and cutting the region into seventeen little maps would be a lie about how its weather works. The front-page plate is clickable per country because a reader arrives from one — seventeen doors into one frame, not seventeen frames.
The fields are chosen for this region rather than inherited. Wet-bulb is a first-class product with its bands cut at 27, 31 and 35 °C, because that is the scale on which a Gulf August night is survivable or not. Temperature runs to +54. The precipitation totals ramp starts at half a millimetre, because a ramp built for a wet climate renders this one as blank paper for eleven months a year. Visibility is carried because in this domain it is a dust field.
Four models, fetched by byte range. ECMWF IFS
at 0.25° to T+240, DWD ICON at 13 km to T+120 — the finest
free grid there is over Arabia — NCEP GFS at 0.25° as the
independent opinion, and ECMWF AIFS as the machine-learned
one. Every fetch is an HTTP range request against the feed's own index
sidecar, so a cycle costs the records this site draws rather than the whole
global file: an IFS cycle is 440 MB instead of 4.5 GB. ICON is read off the
network's own copy on $lake, where the Middle East window is cut
before a byte crosses the network — 155 MB a cycle instead of 3.3 GB.
Absolute colour scales, and a value under every pixel. Ramps
are pinned to real numbers, so a loop shows intensity changing rather than a
palette re-fitting itself each frame. The frames are palettised PNGs and the
catalog ships the same table, so hovering reads the colour back to a number
without fetching anything extra. tools/check_site.py replays that
contract against the published files after every change — it is what caught
three separate unit bugs, including one feed publishing rainfall in metres
beside another publishing it in kilograms per square metre.
The model this region does not have. /mesoscale works through what it would cost to run a real limited-area model over this domain, in core-hours and dollars with the arithmetic shown. Short version: the whole Middle East at 6.5 km is about 12,000 core-hours a month; convection-permitting at 3 km is 37 minutes on eight GPUs and $300–600 a month. Both are affordable. The dominant cost is not compute, it is boundary conditions.
Not an official service of any national meteorological authority, and not a source of weather warnings — for those, your own national service is always the authority, and /sources lists all seventeen with what each of them actually publishes.