Skip to content

Docker image that generates a 800x600 weather status page for display on Nook Simple Touch

Notifications You must be signed in to change notification settings

Home-Is-Where-You-Hang-Your-Hack/nook-weather

 
 

Repository files navigation

Due to various instabilities and connection issues with Weather.gov API that were difficult to correct using a third party library, I decided to rewrite this. This version is no longer maintained.


NOAA/NWS version of nook-weather.

Requirements

Limitations

  • As this pulls data from NOAA stations, it will likely only work for locations in the United States.
  • Not all postal codes seem to work. Querying zip codes using OpenStreetMaps' Nominatim API that associated with only Post Office boxes do not return a location despite being assigned a city. If this occurs, please choose another local zip code.
  • The postal code is used to find the nearest NOAA station. Depending on your location, this may be far away. Find the nearest station on the NOAA/NWS website.

Icons

The icons provided with the NWS forecasts are not designed for e-ink displays and look like crap. Instead, icons are mapped to equivalent ones from erikflowers/weather-icons.

Table of icon mapping

Docker

Enviromental parameter Required Description
EMAIL Yes NWS API requires a non-validated API key to prevent abuse. It can be anything but prefers to use your email address.
ZIP_CODE Yes Location of weather forecast. See limitations above if experiencing difficulties.
BIND_PORT No Port to bind HTTP server to. Default is 3099

Download or clone the NWS branch of this repo. Build the docker image and run the container.

docker build -t "nook-weather" .
docker run -d \
           -p 3099:3099 \
           -e EMAIL="test@example.com" \
           -e ZIP_CODE=<YOUR_ZIP_CODE> \
           --name "nook-weather" \
           nook-weather

screenshot

About

Docker image that generates a 800x600 weather status page for display on Nook Simple Touch

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 78.1%
  • HTML 14.1%
  • CSS 6.8%
  • Dockerfile 1.0%