Better web UI for viewing COVID wastewater data
 
 
 
 
Go to file
xenofem b7a68bd4a4 remember to cargo run in release mode 2022-04-28 00:41:10 -04:00
src log real IPs, not IP of reverse proxy 2022-04-16 13:38:26 -04:00
static make chart adjustments more responsive 2022-04-16 14:46:18 -04:00
.gitignore add result/ to .gitignore 2022-04-16 00:03:50 -04:00
Cargo.lock add basic logging 2022-04-16 00:03:09 -04:00
Cargo.toml add basic logging 2022-04-16 00:03:09 -04:00
LICENSE MIT license 2022-04-15 18:12:22 -04:00
README.md remember to cargo run in release mode 2022-04-28 00:41:10 -04:00
flake.lock go back to mainline nixos-unstable now that buildRustCrate fix is merged, and update 2022-04-17 15:03:54 -04:00
flake.nix go back to mainline nixos-unstable now that buildRustCrate fix is merged, and update 2022-04-17 15:03:54 -04:00

README.md

💩📈

A better web UI for COVID wastewater data

💩📈 is a simple web server that periodically downloads a data PDF from the Massachusetts Water Resources Authority, parses it to extract the data, and serves the data as CSV and JSON along with a simple Chart.js-based web frontend.

Environment variables

  • CACHED_PDF_PATH: file path to save the PDF to. Default: ./data.pdf.
  • STATIC_DIR: directory containing static files to serve. Default: ./static/.

Running

Nix Flakes

nix run git+https://git.xeno.science/xenofem/poop-graph?ref=main

(The Nix package is wrapped with STATIC_DIR set automatically to the correct Nix store path, so it'll serve the static files properly no matter what directory you run it from.)

Non-Nix

git clone https://git.xeno.science/xenofem/poop-graph
cd poop-graph
cargo run --release

Other setup

  • 💩📈 serves HTTP on 127.0.0.1:8080, and is meant to be used behind a reverse proxy (e.g. Nginx), ideally with SSL certificates (e.g. Let's Encrypt). If you prefer, you could also use that web server to serve the static files, and only pass requests for /data.csv and /data.json to 💩📈.
  • You'll probably want to set up a service (systemd or whatever your OS uses) to start 💩📈 automatically with environment variables set appropriately.