skywatch, first demo
skywatch is a small weather prototype. It pulls a 7-day forecast from Open-Meteo, resolves the user's city server-side from the IP without calling the browser Geolocation API, and can run a computer-vision check against public webcams. The figures below are taken directly from a local run of the app.
Screenshots
Live proof Live
Each panel below pairs the most recent frame from a public webcam with the Open-Meteo forecast for the same coordinates, both fetched by your browser at the moment this page opened. Nothing in this section is stored in the repository. Reload the page and you will get a newer pair. The UTC timestamp printed on each card is the single capture time we used to request both the camera frame and the forecast, so anyone can verify them independently.
Honest caveat. The webcam hosts publish frames on their own schedule (typically every few minutes to every 10 minutes). Our timestamp is the moment we asked; the actual frame you see was taken at or slightly before that moment, whenever the source last refreshed. That is the closest to real-time these public feeds allow.
Camera 1. E6 Alsgård, Nordland, Norway
Camera 2. E6 Aisaroaivi, Finnmark, Norway
Camera 3. NOAA GLERL, Chicago, USA
A note on timing. The Norwegian cameras sit above or near the Arctic Circle, so between roughly 22:00 and 04:00 UTC you will see night frames. The Chicago camera is six time zones west and shows night from roughly 02:00 to 12:00 UTC. If you open the page while all three locations are in darkness, the frames will be dark, and that itself is a consistency check.
Status
What is live today, what needs a key, and what is on the roadmap.
| Feature | State |
|---|---|
| Open-Meteo / ECMWF IFS forecast | Live, no key |
| IP to city geolocation (ipapi.co) | Live |
| Cascading city picker | Live |
| Ensemble fusion engine | Live, 33 passing tests |
| 7-day chart and daily cards | Live |
| HSV and Sobel heuristic classifier | Live |
| US DOT 511 camera integration | Live (public data) |
| OpenWeatherMap provider | Needs key |
| Windy webcam integration | Needs key |
| NVIDIA Earth-2 NIM | Stub, target v0.3 |
| EfficientNet-B0 fine-tuned classifier | Pipeline ready, target v0.2 |
| Google MetNet-3 | Placeholder, no public API yet |
| LLM narration | Roadmap, v0.2 |
Reproduce locally
The screenshots above were captured on a fresh clone with no API keys set:
git clone https://github.com/ruddro-roy/skywatch
cd skywatch
docker-compose up
Then open http://localhost:3000. See DEMO.md for the non-Docker path.