developing-with-streamlit

Review·Scanned 2/18/2026

This skill documents how to build, design, and deploy Streamlit apps, with extensive examples for chat UIs, theming, Snowflake connections, and CLI usage. It includes instructions to store credentials in .streamlit/secrets.toml, run shell commands like streamlit run ..., and make network calls to services such as OpenAI and https://raw.githubusercontent.com/....

by streamlit·v0fcd6d0·91.4 KB·151 installs
Scanned from main at 0fcd6d0 · Transparency log ↗
$ vett add streamlit/agent-skills/developing-with-streamlitReview findings below

Developing with Streamlit

A collection of skills for building production-grade Streamlit apps. Each skill focuses on a specific aspect of Streamlit development.

When to activate

Activate these skills when:

  • Creating new Streamlit apps from scratch
  • Adding features to existing apps
  • Debugging performance issues
  • Improving app design and UX
  • Setting up project structure and environments
  • Connecting to data sources like Snowflake

Quick routing

Performance issues or slow apps?optimizing-streamlit-performance

Building a new UI?choosing-streamlit-selection-widgets + using-streamlit-layouts

Building a dashboard?building-streamlit-dashboards + displaying-streamlit-data

Making it look good?improving-streamlit-design

Formatting text with markdown?using-streamlit-markdown

Multi-page architecture?building-streamlit-multipage-apps

Customizing appearance or creating a custom theme?creating-streamlit-themes

Setting up a project?setting-up-streamlit-environment

App getting complex?organizing-streamlit-code

Connecting to Snowflake?connecting-streamlit-to-snowflake

Building a chatbot or AI assistant?building-streamlit-chat-ui

Need features not in core Streamlit?using-streamlit-custom-components

Using the Streamlit CLI?using-streamlit-cli

State management and session state?using-streamlit-session-state

Skill map

SkillCovers
building-streamlit-chat-uiChat interfaces, streaming responses, message history
building-streamlit-dashboardsKPI cards, metrics, dashboard layouts
building-streamlit-multipage-appsPage structure, navigation, shared state
choosing-streamlit-selection-widgetsSelectbox vs radio vs segmented control vs pills vs multiselect
connecting-streamlit-to-snowflakest.connection, query caching, credentials
creating-streamlit-themesTheme configuration, colors, fonts, light/dark modes, professional brand alignment, CSS avoidance
displaying-streamlit-dataDataframes, column config, charts
improving-streamlit-designIcons, badges, colored text, visual polish
optimizing-streamlit-performanceCaching, fragments, forms, static vs dynamic widgets
organizing-streamlit-codeWhen to split into modules, separating UI from logic
setting-up-streamlit-environmentPython environment, dependency management
using-streamlit-custom-componentsThird-party components from the community
using-streamlit-cliCLI commands, running apps
using-streamlit-layoutsSidebar, columns, containers, tabs, expanders, dialogs, alignment, spacing
using-streamlit-markdownColored text, badges, icons, LaTeX, and all markdown features
using-streamlit-session-stateSession state, widget keys, callbacks, state persistence

Resources