# Deploy Streamlit apps in Snowflake

Source: https://docs.streamlit.io/deploy/snowflake

Host your apps alongside your data in a single, global platform. Snowflake provides industry-leading features that ensure the highest levels of security for your account, users, data, and apps. If you're looking for an enterprise hosting solution, try Snowflake!

Streamlit is Snowflake's native framework for data apps. For an overview, see the [Streamlit in Snowflake product page](https://www.snowflake.com/en/product/features/streamlit-in-snowflake/).

- **Your data stays in Snowflake.** Apps run under Snowflake's access controls, with their owner's rights, or with [caller's rights](https://docs.streamlit.io/develop/api-reference/connections/st.connections.snowflakeconnection) through `st.connection("snowflake-callers-rights")` on the container runtime or serverless compute, so each viewer sees only the data they may see.
- **CoCo builds the app.** Snowflake's coding agent, CoCo, builds Streamlit apps from a request in plain words with its bundled `developing-with-streamlit` skill, and converts Tableau workbooks into Streamlit in Snowflake apps with its `tableau-to-streamlit-in-snowflake` skill.
- **Governed metrics and AI.** Apps can query semantic views and call Cortex AI.
- **Modernize your BI dashboards.** Move the Power BI and Tableau dashboards your teams rely on to Streamlit. See [Coming from a BI tool?](https://docs.streamlit.io/develop/concepts/design/dashboards#coming-from-a-bi-tool)

For more, see [Why Streamlit](https://docs.streamlit.io/get-started/why-streamlit#best-on-snowflake).

- **[Streamlit in Snowflake Quickstart](https://docs.streamlit.io/get-started/installation/streamlit-in-snowflake)**: Create a free trial account and deploy an app with Streamlit in Snowflake.
- **[Examples](https://github.com/Snowflake-Labs/snowflake-demo-streamlit)**: Explore a wide variety of example apps in Snowflake Labs' snowflake-demo-streamlit repository.
- **[Get started with Snowflake](https://docs.snowflake.com/user-guide-getting-started)**: Learn more in Snowflake's documentation.

There are three ways to host Streamlit apps in Snowflake:

- **[Streamlit in Snowflake.](https://docs.snowflake.com/developer-guide/streamlit/about-streamlit)** Run your Streamlit app as a native object in Snowflake. Enjoy an in-browser editor and minimal work to configure your environment. Share your app with other users in your Snowflake account through role-based access control (RBAC). This is a great way to deploy apps internally for your business. Check out Snowflake docs!
- **[Snowflake Native Apps.](https://docs.snowflake.com/en/developer-guide/native-apps/adding-streamlit)** Package your app with data and share it with other Snowflake accounts. This is a great way to share apps and their underlying data with other organizations who use Snowflake. Check out Snowflake docs!
- **[Snowpark Container Services.](https://docs.snowflake.com/en/developer-guide/snowpark-container-services/overview)** Deploy your app in a container that's optimized to run in Snowflake. This is the most flexible option, where you can use any library and assign a public URL to your app. Manage your allowed viewers through your Snowflake account. Check out Snowflake docs!

> **Note**
>
> Using Snowpark Container Services to deploy a Streamlit app requires a compute pool, which is not available in a trial account at this time.
