Streamlit App to create 3D-printable STL files of the earths surface 🌍

Hey,

I just published by first streamlit app:

https://share.streamlit.io/fgebhart/mapa-streamlit/main/app.py

(And here is the source code)

Would love to get some feedback, as I probably still have to learn quite a bit about streamlit.

Also, I was wondering what the streamlit could hardware limitations are? My app fetches GeoTiffs from the internet and stores them locally (as cache for subsequent computations) and computes largish files (multiple hundreds of MBs) for the users to download. If there is a limitation of let’s say a few GB I would probably implement a cleaning mechanism to remove old files.

1 Like

I think you should do that anyway to follow cloud apps best practice (etiquette).

I think you should do that anyway

Sure, did implement such a cleaning mechanism to delete files older than 3 days.

Still, it would be interesting to know what the hardware limitations of a basic streamlit app are. Though I would of course understand if streamlit does not want to share these details.

It’s less about us not wanting to share (I think it’s 1GB of RAM and a two-core CPU), just that for your user’s sake, you’ll probably want to clear the cache pretty frequently if your data is that size. I wouldn’t assume you can store more than 2-3 GB of files per app before you risk your app not working properly on the free tier.

Best,
Randy

Thanks for sharing the details. With this info I think a volume based approach might make more sense than the number of days based approach. I assume I could even read the volume size from Python and check how much capacity is free. Will see what I can come up with.

Was just about to also ask about concurrency of streamlit apps but stumbled upon your post on this topic, thanks! :+1: