During the 2015 drought I wrote niveles-carraizo, an openshift app to monitor the water levels at the reservoir close to my home. Openshift changed the way apps work, so the app stopped working a while back.

The app used a cronjob to scrape data from our water works, but the USGS has a public repository with historical and current data. For example, the daily data for the draught year is

The app also used python and pygal to render graphs on the server side.


I reimplemented the Carraizo application in pure javascript, using the USGS data, and the D3.js and Plotly.js libraries. The javascript queries the USGS site from the browser and renders the plot seen below.

The new app only needs the USGS data and a static server.