It surprises me that in 2025 we can't just support global free weather data as some kind of cooperative service. It's not like it's high-bandwidth or even all that high-volume.
It surprises me that in 2025 we can't just support global free weather data as some kind of cooperative service. It's not like it's high-bandwidth or even all that high-volume.
I could switch my site to just use NWS and be US only I suppose; better than just being completely off. Adding all the weather services of every country in the world is too much for me (and why I guess the paid services are value-add).
They also provide yr.no which is widely used worldwide.
- It uses open-meteo's API. Before open-meteo, I tried with OpenWeatherMap's API.
- However, besides requiring an additional call for each previous day's data, OpenWeatherMap's One Call API only supported local time zones for current and forecast data. So depending on the timezone and time, there could be a big gap in the data that needed to be filled with timezone math (and extra API calls. The original DarkSky One Call API did not have this issue.)
- I even blogged about this over 10 years ago: https://blog.leftium.com/2013/12/how-to-display-temperature-...
- Previous version used to show two historical days: https://github.com/Leftium/ultra-weather
- The current version is capable of showing the previous 90 days. I plan to add a weekly overview with two previous days.
BTW the https://open-meteo.com API supports getting historical and forecast data in a single call. All other API's require at least two calls.
EDIT: I have also since learned of Vercel's bot/scraper blocking features so I'm also going to try turning those on and see if it stops the scraping.