I wrote this originally in Dash but it was a fun and easy first project to try with Streamlit.
Here it is deployed on Streamlit Cloud. Here is the source on github.
The dash version runs via uwsgi on my digital ocean droplet with the data stored in a sqlite database. I turned that database into a private rest api so the streamlit app could access the live data I build daily.
I really like how easy streamlit is to put together a quick interface, and it was a good learning exercise to make the api to pull in live data from my own server. The experimental_singleton
features helps a lot with the app speed.