Summary
I've built a next-gen UI prototype that turns public openSenseMap API measurements into a live weather report (temperature / humidity / pressure / PM aggregation + narrative text), plus a MapLibre exploration view.
This is not a PR against the AngularJS codebase — it's a standalone Vite/React demo meant as a design/product proposal for how opensensemap.org could feel more innovative while staying fully based on citizen-science sensor data (no third-party weather API).
Demo
What it does
- Geolocation or city search → bbox around the user
- Load senseBoxes from
https://api.opensensemap.org
- Keep only fresh measurements (configurable window), prefer outdoor when enough stations exist
- Aggregate median/mean/min/max with outlier guards
- Generate a deterministic German weather narrative + data-quality line
- Map + phenomenon filters + box detail with 24h sample history
Why share this here
Happy to iterate based on maintainer feedback, extract reusable pieces, or help explore a longer-term frontend path. Looking for interest / guidance on whether a narrative live-weather experience would fit the official product direction.
Thanks for openSenseMap & the public API!
Summary
I've built a next-gen UI prototype that turns public openSenseMap API measurements into a live weather report (temperature / humidity / pressure / PM aggregation + narrative text), plus a MapLibre exploration view.
This is not a PR against the AngularJS codebase — it's a standalone Vite/React demo meant as a design/product proposal for how opensensemap.org could feel more innovative while staying fully based on citizen-science sensor data (no third-party weather API).
Demo
npm install && npm run dev(Node 22+)What it does
https://api.opensensemap.orgWhy share this here
Happy to iterate based on maintainer feedback, extract reusable pieces, or help explore a longer-term frontend path. Looking for interest / guidance on whether a narrative live-weather experience would fit the official product direction.
Thanks for openSenseMap & the public API!