Streamlit Development

Build, test, and deploy Streamlit data apps on Snowflake.

34|13|Updated Feb 1, 2022
One-click install
npx skills add https://github.com/sfc-gh-dflippo/snowflake-dbt-demo --skill streamlit-development
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Streamlit Development
Source: https://github.com/sfc-gh-dflippo/snowflake-dbt-demo/tree/main/.claude/skills/streamlit
Command: npx skills add https://github.com/sfc-gh-dflippo/snowflake-dbt-demo --skill streamlit-development

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires streamlit, snowflake-snowpark-python, pandas, and includes scripts (resource) and references (resource) components.

What problem does it solve?

Developing, testing, and deploying interactive data applications, especially within a Snowflake environment, can involve complex setup, environment management, and ensuring compatibility between local and cloud execution. This skill streamlines the entire lifecycle of Streamlit app development on Snowflake.

Core Features & Use Cases

  • Dual-Environment Compatibility: Seamlessly develop locally and deploy to Snowflake's native Streamlit environment using a unified connection pattern.
  • Testing Integration: Support for unit tests with pytest and browser-based UI validation with Playwright MCP.
  • Optimized Deployment: Leverage Snowflake CLI for efficient deployment and manage dependencies with Snowflake Anaconda packages.
  • Use Case: Create a financial dashboard that allows users to interact with Snowflake data, deploy it directly to Snowflake for secure access, and ensure it's thoroughly tested for functionality and performance across all environments.

Quick Start

Install dependencies (pin Streamlit version to match Snowflake)

uv pip install --system -r requirements.txt

Run your Streamlit app locally

streamlit run app.py

Deploy to Snowflake using CLI

snow streamlit deploy --replace -c default

Frequently Asked Questions about Streamlit Development

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build and deploy a Streamlit app on Snowflake?

Building and deploying a Streamlit app on Snowflake involves writing your app with Streamlit and Snowpark, testing it locally, then using Snowflake CLI to deploy. The Skill covers the complete lifecycle: local development with environment-aware session handling, pytest or Playwright testing, and deployment via `snow streamlit deploy` to Snowflake's native environment.

Can I develop a Streamlit application locally and then deploy it to Snowflake without major changes?

Yes. Streamlit development on Snowflake uses a unified connection pattern that works across local and cloud environments. You develop and test locally with the same code, then deploy directly to Snowflake using Snowflake CLI—no refactoring needed for Snowpark session handling or data access patterns.

What's the best way to test a Streamlit app before deploying to Snowflake?

Test Streamlit apps using pytest for unit tests and Playwright for browser-based UI validation. The Skill integrates both testing approaches to verify functionality across your app logic and interactive components before production deployment to Snowflake.

Does Streamlit work with Snowflake data and Snowpark for interactive apps?

Yes. Streamlit integrates seamlessly with Snowflake and Snowpark—you query and process Snowflake data directly within interactive Streamlit apps. The Skill handles Snowpark session caching, environment-agnostic connections, and error handling for secure, efficient data app development.

What dependencies do I need to build a Streamlit app on Snowflake?

You need Streamlit, snowflake-snowpark-python, and pandas. The Skill requires pinning the Streamlit version to match Snowflake's supported release and managing dependencies through Snowflake Anaconda packages for consistent deployment.

How do I separate data access from UI logic in a Snowflake Streamlit app?

Separate data access and UI by structuring your app to isolate Snowpark session logic from Streamlit components. The Skill implements this pattern with session caching and environment-aware connections, ensuring clean architecture and testability across local and cloud deployments.