A Streamlit app running on your laptop is useful for development, but other people need a way to reach it. Streamlit Community Cloud is a free hosting service for public Streamlit apps. It connects to a GitHub repository, making it a practical way to share a small project without setting up your own server. section 1.3.8 section 5.1.2
To take an app from local development to a public URL:
- Get Python, Streamlit, and git ready; create GitHub and Community Cloud accounts, then connect them. section 5.2.1
- Push the app code to a GitHub repository and tell Community Cloud where to find it. Push later changes to the repository to update the deployed app. section 5.5
- Record Python library dependencies and their versions in requirements.txt so the deployed app can install them. section 5.5
A to-do list anyone can open
A locally working to-do list app can be deployed to Community Cloud so someone with an internet connection—not just someone on your local network—can use it. This is a useful first deployment before adding services or credentials. section 5.2 section 5.1.2
If an app calls an external API, keep its API key out of GitHub. Store it locally in .streamlit/secrets.toml, exclude that file with .gitignore, and put the production value in the deployed app’s App Settings → Secrets. The app can read the configured value through st.secrets. section 5.4.3 section 5.5
Community Cloud is best suited to learning, testing, and lightweight public apps. It has CPU, memory, and storage limits; idle apps may sleep, and custom domains are unavailable. It also cannot host non-Python software such as a database inside the app environment: an app needing PostgreSQL requires a separately running server. For heavier traffic, more control, or a professional custom domain, consider another hosting option. section 12.1.1 section 8.6
