• he/they

Web and mobile developer, telepathic bridge, worm power, vitality drink

posts from @vavassor tagged #nws

also:

Been making a documentation site for NWS client. I've never made a site for documentation before, only files or separate online documents.

This one uses eleventy as a static site generator, and the API reference section uses typedoc. That's why the sections look visually different.

Having to write the "getting started" page made me realize how unwieldy the interface is. I sorta knew I was choosing modularity over simplicity. But having to explain makes it more apparent.

Getting the current weather would be the primary use case of this library. So making that simple and easy is important. Thinking about making a dedicated package just for that. And the advanced stuff like radar stations and observations can be separate if you need those.



To use my weather library in an actual app, I've been building out an example site for NWS client. Warning: it asks for location permissions on clicking that link and will continue to ask if you don't select "Remember my location".

It's rough and I've been mainly focusing on adding functionality. Not at all on visual design or trying to make it easy to use, or navigate.

Below are ideas for changes.

  • Add more information about radar stations, servers, etc.
  • Add pages for aviation weather data.
  • Add some way to navigate or filter products, stations, and zones. Right now it kinda just spews some recent data out in a table. So most of the data is inaccessible.
  • Style links differently from normal text so you can tell links apart.
  • Add icons to represent the current forecast. (partly cloudy, scattered showers, etc.)
  • Add some kind of maps. This would mostly be to help select areas.
  • Make the whole site prettier.


I recently learned that there's a publicly-funded National Weather Service API in the United States. It's a service for weather data and forecasts.

I made nws-client to help use the API. Mainly because I couldn't find an official package on npm and I needed Typescript types. The data returned from the service is complex, so it's pretty tedious to write yourself.

The library works but it's awkward to use. I haven't written any documentation and I'm trying to create example projects. Mainly so I can understand how users might want to use the library. And hopefully learn how to make it less awkward.

Also because JavaScript is used in a ton of different frameworks and types of apps, which may have different expectations. I'm going to try and cover web apps, mobile apps (react native), desktop apps (electron), and web services (node js).