For any other person who wants more advanced weather, I like meteo-blue's multimodel graphs https://www.meteoblue.com/en/weather/forecast/multimodel/tex...
Much more information dense, if less pretty but it's helpful to see a bunch of models to get a sense of the uncertainty. It's what meteorologists I know do often, and you can quickly learn which models are short vs long-term and uncheck them
I do wish I could make my own graphs but parsing all the different weather models is a pain, maybe there's some API I don't know about or an open source consistent parser
Instead of showing multiple models, I prefer they run the same model multiple times with slightly different starting conditions. And then show error (probability) bands.
100% - I love https://www.windy.com for this very reason. Their full meteogram gives you a really succinct/concise representation for all the data it's showing every 3h for 5+ days (wind, temp, dew cloud cover/levels, etc).
That said.. Windy's precipitation forecast figures haven't always been great around here.
This (and every other Dark Sky replacement I've tried) is missing one feature that is crucial to me: hour-by-hour barometric pressure forecast.
I get frequent migraines and big changes in the weather trigger them. The easiest way to predict big changes is by watching for swings in the barometer. There's nothing out there that gives the hour-by-hour barometric pressure prediction (at least on iOS) and it's so significant that it has impacted my overall quality of life.
FYI, the iOS Weather app does have this now. If you click on a day in the 10-day forecast, you get a detail view with hour-by-hour forecast data for many metrics. One of them is pressure (although I don't normally look at barometric pressure so maybe this different than what you need).
Edit: You can also click on the "pressure" widget and it brings up the same hour-by-hour detail view.
"Chance of precipitation" isn't one of them though, they'll only give you a predicted inches of rainfall. Should I assume that if there's a nonzero amount of rain in the graph it's a definitely going to happen and I should carry around my umbrella?
Darksky used to make that really easy to check for the entire day and I'm not loving Weather as a replacement.
Glad I'm not the only one, I was starting to wonder if I was crazy because that felt like the main piece of data in Dark Sky to me. But I saw a lot of iOS news coverage saying basically "Dark Sky is shutting down, but don't worry about it because Weather app has its local forecast features now!"
Meanwhile Weather app completely missed the point and gives me a bunch of stuff I don't care about.
You can tell me that the wind at 4 PM is going to be 5 MPH west northwest but you can't tell me there's a 30% chance of rain? Gee that's great, thanks for shutting down Dark Sky!
I’m in the same boat and contemporary headache research doesn’t have any clues yet (aside from the fact that it’s a real phenomenon and we’re not crazy) although it is an area of active research.
I can usually tell by intuition if weather is going to trigger things — I’ll even say, “it feels migrainey out” — but I don’t have one specific weather pattern that is clearly the cause.
That’s why I pay attention to the barometer. The barometer frequently predicts big, nonspecific weather changes so whenever I see one on the horizon I know that I might get a migraine when that happens.
Regarding preparation, I try to get stuff down so I can take it easy around the time when the pressure is shifting.
For example, later this afternoon the pressure is supposed to climb quite a bit so I’m getting critical blockers for work done this morning and then I’m going to visit the gym at lunch. It really helps my stress level if I can finish my plan for the day before a headache puts me out. I hope that makes some sense?
yeah I've wondered too. Although I think for me I just feel better when it's colder
I did debate writing how 'headache'y I felt periodically with timestamps (e.g. make a telegram bot -> google sheet) and then add in some weather data and see if it was actually correlated if I plotted them
Only tested on the Desktop but I'm finding I have to do a bit more work (vs MerrySky) - that is, I have to keep clicking each day.
Usability could be improved if today's weather information bar automatically displayed when accessing the page. Maybe the settings could add a toggle ON option for:
Thanks, clicking on the large temperature does indeed — a bit unintuitively — toggle between °F and °C. If you're on a mobile. If you're visiting from a desktop computer, as was my original case, there is no large temperature to click on.
Unfortunately, the NWS API is missing machine readable condition codes/icons in the daily and hourly forecast, which is why it isn't available in briefsky. The API has nearly everything else, though. If I had a solution for those icons, I probably would have added support for their weather alerts too, and also made it the default for US locations.
The icon field is deprecated, no longer documented in the API, and also more complicated in practice, as it can mix multiple conditions, e.g. `...{day,night}/rain,30/snow,60?...`. The space of possible icons is also fairly large -- https://www.weather.gov/forecast-icons to get an idea -- and it's not clear what short string they all map to. So yeah, in theory you could parse and infer a weather condition out of that link, but as you can see it's pretty hacky and already deprecated. The API should really just return a code or enum (e.g. like a WMO code).
But maybe there's a cleaner way to infer it. PRs are always welcome.
I don't know why you think it's deprecated? I don't see that anywhere. They just updated the icons in 2015, which for govt API work is practically yesterday :)
I think it's just that the specifications document, like basically all documentation is out-dated. There are many fields in the output that are not in the documented spec.
My weather needs just call directly to api.weather.gov and have done so reliably for a year or two now, whenever the last API I was using started charging or broke or whatever happened to it(I don't even remember what API it was at this point). So I have no need of your project, but I wish you lots of success!
They're deprecated under the "Specification" tab: the `/icons/...` endpoints in the endpoint list, and the `icon` field in the `GridpointForecast` schema. The `shortForecast` field is documented as `A brief textual forecast summary` and not exhaustively enumerated, so it's also technically not machine readable. If it's anything like the icons, there could potentially be 50+ of these. I really couldn't find anything resembling an overall conditions enum or code anywhere, but I'd be happy to be wrong.
In the meanwhile, I could try to get it working with nearly everything else and try to find a last minute hack for the icons.
Yes, but if I'm making a website supporting hundreds of different APIs with different schemas and slightly different information available isn't really practical. Local providers aren't really a substitute for a single global source of weather data.
Assuming all of those things, I agree it's not great, but if you truly need global weather information, you either pay for an API(assuming one exists, I have no idea) or afford to hire developers/dedicate time to make one for you.
I would never expect a govt to provide global weather forecasts for places outside their jurisdiction. Though now I wonder is the US govt one provides weather for the US territories and other US places outside the 50 states. I don't have time to play with that at the moment, sadly.
I miss the dark sky alerts indicating that its about start raining in the next x number of minutes at my location and how long the rain will continue. Was great when I was about to step out for an errand and could wait until it stopped raining.
Can someone explain to me why weather data is seemingly hard to get/provide? Isn’t data from the US government (weather.gov) in the public domain and completely free? What did Dark Sky and similar provide on top?
The answer is that it is not hard to get. The problem is that you are asking web developers not weather scientists.
The US provides free updated every 15 minute forecast for an absurd number of weather variables for every 3km square of the US in a nice GRIB file package. It is the gold standard on the free domain. Want a real api? Be prepared to pay real money. All Darksky did on top of this was interpolate that forecast data across time and the map.
Without an actual meteorologist on hand to guide the process, the forecast is probably going to be bad. NOAA and the weather community are just fine with the bar being high for entry. A proliferation of low effort/poor forecast web sites would just lead to them removing the realtime data from the public domain.
Relative to the prediction side (which Dark Sky is arguably most known for): Every day, NOAA collects billions of data points (20 TB) of data about the planet's weather, and throws it into their supercomputers to make a forecast. NOAA has the 49th and 50th fastest computers in the world. In fact, the two major applications of the original supercomputers were nuclear physics and the weather.
They make it all available at https://www.noaa.gov/nodd/datasets, but as noted - since the data is so incredibly large and NOAAs already running stats on it... you can't really outcompute them.
[There are very very few CS applications with both a) more computing power and b) more real world impact than predicting weather and hurricanes. Maybe cancer research.]
For me, it was the history data. I could check if it snowed in the last couple days in a new location and whether it melted yet. With most weather apps, the furthest back I can see is midnight, which does not even answer the question of whether there are going to be puddles/snow/slush/ice on the ground that formed since the time I went to sleep.
The main issue I ran into with the NWS API was a lack of stable conditions codes/icons (something like WMO codes that could be easily mapped). They encode some weird dynamic image URL that renders a summary of the weather, but isn't machine readable. I think they're deprecating it anyway. Otherwise, it had pretty much everything through one endpoint or another.
I agree this data should be free and easy to access from the government.
Personally, I've found weather.gov APIs hard to work with. There's no geocoding included, and you can't even use lat, lon directly. But the bigger dealbreaker is that I have about a ~10-20% success rate querying any given endpoint, where sometimes I just get "An unexpected problem has occurred." And this is an automated twice-a-day query, so I don't think I'm hitting any rate limits...
You can use lat,lon with the points endpoint: https://www.weather.gov/documentation/services-web-api , then properties.forecast and properties.forecastHourly endpoints from there to get daily and hourly forecasts. I don't have enough experience with it to comment on rate limiting, though.
Small feature request; when I paste in from Google's "copy coordinates" feature, it could detect my paste contents are "coord,coord" and populate the form appropriately, splitting on the ",".
Would be nice if it automatically uses degrees Celcius instead of Fahrenheit if the location is Europe. Also for visibility and wind speed, km instead of mi.
I considered handling this with some coarse longitude heuristic, but settled on just using the browser's locale for now, so it should default to metric for non-US locales. In the metric setting, the visibility and wind speed will be km and km/h, respectively.
Locale, in practice on the web, is mostly about language (fortunately!). I’m Dutch in NL and my browser (and OS!) is set to prefer en-US. Most of my friends do too. Dutch software UI translations are terribly cringey.
To me, that means I prefer English UI text but it doesn’t suddenly mean I want my units in arms and ounces and firestoves or whatever weird shit you Anglosaxons do :-)
I recognize that formally this is me breaking the locale model, but if so, then that’s a flaw in the design of locales and not a flaw in me. At the risk of ranting a bit, the idea that I can’t have a Color Picker named “Color Picker” without also bending over and accepting Fahrenheit is just weird to me. Lumping all this stuff together (don’t get me started on number formatting!) into a single 5-character language-and-region code is just dumb. The model assumes one dimensional einheitswurst humans who do as they’re told in primary school, never move away from their home town and never learn a second language. It sucks.
Let’s be happy so many websites get this right and treat locale as a language selector only.
(Meta sidenote, “Einheitswurst”, literally “unit sausage” but kinda also “unity sausage” which gives this word for dullness a delightful political angle, has got to be the second-best word in the German language)
Love the app. Would love to use it on my iphone as a PWA but it seems to have a couple issues running on mobile:
1. The Example Weather Provider notification keeps popping up every time I refresh. It doesnt remember that I already closed it the last time
2. For some reason, on my phone it thinks that today is Saturday (today is Monday where I am) and its giving me the upcoming weeks weather starting with Sunday.
Very cool. Special kudos for the light and informative UI design.
One nitpick - with Geolocation option, if it is disabled at the browser level (all fields are greyed out), the app shows some forecast, but it's not clear for what location.
An idea - allow enabling multiple providers at once, have the app automatically validate their forecasts against the actual conditions and then, basically, rank them on accuracy. In theory this should allow determining providers that are good at forecasting for one's specific location.
Nice. A tip: as long as you're asking for position anyway, you might as well make the units default to the units used in that location. 99% of the time that's what we want.
Don't forget the clock, too. It's not quite as odd to use am/pm as it is to use imperial units, but it's still the wrong choice for all of Europe minus U.K.
Briefsky only offer Open-Meteo without an API key. This is a Europe Centric model (if they integrate HRRR, they don't state it anywhere I could find. I could be wrong) while MerrySky uses Pirateweather.net which among others does integrate the HRRR model, which is a US model and is higher resolution (3km vs 4km).
Yup, all good points. I've found Open-Meteo's default to be subpar for US. Briefsky offers Pirate Weather too, but will require a free API key. (MerrySky is Pirate Weather, so it's baked in.)
I was actually hoping to make NWS the default for US, but ran into some limitations with their API missing machine readable conditions codes/icons. Open-Meteo does have https://open-meteo.com/en/docs/gfs-api, which should probably be used in the meanwhile for a better default forecast with US locations.
I would suggest trying https://www.meteosource.com where you can get all data including 10 day forecast with a text description. There is a free plan for developers with 7 days forecast and a reasonably priced Flexi plan with full data.
I love the UI but it seems to be missing what location it has loaded for? I know it asks for it, it is useful for me to see what location it is reporting on.
Yeah, this probably requires some explanation. Currently, briefsky doesn't depend on a geocoding API, so it can't map locations to coordinates or vice-versa. It just uses the lat/long from the browser's geolocation or manual coordinates in the settings. But ideally it'll have location search and location text at the top.
The way I use it is as a bookmark with a pre-configured provider and the location in the title. briefsky stores all configuration in the URL, so you can bookmark multiple locations / providers.
I do wish I could make my own graphs but parsing all the different weather models is a pain, maybe there's some API I don't know about or an open source consistent parser