Can I host streamlit on Now.sh/Vercel?

I figured out how to host streamlit on heroku, and it works well. Is it possible to host the app on Vercel? With heroku, the app goes to sleep for every 30 minutes of inactivity. I’m also more comfortable with Vercel’s CLI and find it easier to use. Is it possible?

Thanks!

Hello @ninest, welcome to the forum !

From what I remember from Now.sh/Vercel, it’s used to serve static frontend pages, but Streamlit apps are not purely frontend applications because there’s a Python server running in the background and this cannot be launched by Vercel.

Check this answer for reference. Basically you need a PaaS which can run a Python server (Streamlit) to deliver your frontend app connected to the Python server, which is better done with Heroku, AWS, GCP, Azure…

2 Likes

To add to @andfanilo’s answer, I answered this same question on Reddit the other day: https://www.reddit.com/r/learnpython/comments/grmjfo/is_it_possible_to_host_a_streamlit_app_on_vercel/fs4elmx?utm_source=share&utm_medium=web2x

As far as I can tell, Vercel cannot serve Streamlit apps as Fanilo indicated.

2 Likes

@andfanilo @randyzwitch Thanks for the answers! I will stick to Heroku for now. Just to confirm, Vercel does support dynamic apps (eg. Flask), But the answer on reddit made sense. Either way, thanks for your help!

I had the same question and figured out, that it`s impossible. I used now.json and Dockerfile for configuration to run it. Unfortunately Streamlit app needs 87mb in runtime, while Vercel allows you to use only 50mb maximum.

1 Like