Streamlit is an excellent framework written in Python to deploy dashboards and web apps based on complex datasets. The capabilities of Streamlit are almost infinite and, best of all, Streamlit apps are super easy to deploy on Qoddi App Platform.
Streamlit apps are basically Python apps and are built natively by Qoddi. We need to make a few changes to our app to have all the appropriate packages downloaded during the build and adjust the network routing to the app.
This tutorial assumes your app file is app.py, replace if needed.
Before starting, upload your app.py file to GitHub or any other Git software. if you use Jupyter Notebook, make sure to download your app as a .py file
requirements.txt file
As with any other Python app a requirements.txt
is required for the app to build. Make sure to include all the libraries your app use including streamlit.
Create a Procfile
A Procfile
is the set of instructions used when your app starts. We need to use the Qoddi env variable PORT
(set automatically from the App port selected on your app settings page) for our app to start on the proper port number.
web: streamlit run app.py --server.port=$PORT
Replace app.py
with your app file.
Now you can build your Streamlit app from your Git Repository directly to Qoddi!
Activate WebSocket support
Streamlit needs a Web Socket to work, activate support for it from your app settings page:
The app will restart after the modification is processed.
You can fork and deploy this repository to see a Streamlit app working on Qoddi (this app: https://sfyjambigv.us17.qoddiapp.com/)
See Streamlit documentation for CORS/XSRF protection settings and how to fix issues.
Was this helpful?
1 / 2