developing-with-streamlit
Guides for creating, editing, and deploying production-grade Streamlit web apps.
Install
mkdir -p .claude/skills/developing-with-streamlit && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/14577" && unzip -o skill.zip -d .claude/skills/developing-with-streamlit && rm skill.zipInstalls to .claude/skills/developing-with-streamlit
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Build production-grade Streamlit apps. Used when creating, editing, debugging, or deploying Streamlit applications. Routes to specialized sub-skills for performance, layouts, design, data display, and more.Key capabilities
- →Create new Streamlit apps
- →Add features to existing Streamlit apps
- →Debug performance issues in Streamlit apps
- →Improve Streamlit app design and user experience
- →Set up Streamlit project structure and environments
- →Connect Streamlit apps to data sources like Snowflake
How it works
This skill acts as a router to specialized sub-skills for various aspects of Streamlit development, including performance optimization, UI building, data display, and session state management. It guides the user to the appropriate sub-skill based on their specific development need.
Inputs & outputs
When to use developing-with-streamlit
- →Creating new Streamlit dashboards
- →Optimizing slow apps
- →Building custom components
About this skill
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
Building your own custom component? → building-streamlit-custom-components-v2
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
| Skill | Covers |
|---|---|
| building-streamlit-chat-ui | Chat interfaces, streaming responses, message history |
| building-streamlit-dashboards | KPI cards, metrics, dashboard layouts |
| building-streamlit-multipage-apps | Page structure, navigation, shared state |
| building-streamlit-custom-components-v2 | Streamlit Custom Components v2 (inline and template-based packaged), bidirectional state/trigger callbacks, bundling, theme CSS variables |
| choosing-streamlit-selection-widgets | Selectbox vs radio vs segmented control vs pills vs multiselect |
| connecting-streamlit-to-snowflake | st.connection, query caching, credentials |
| creating-streamlit-themes | Theme configuration, colors, fonts, light/dark modes, professional brand alignment, CSS avoidance |
| displaying-streamlit-data | Dataframes, column config, charts |
| improving-streamlit-design | Icons, badges, colored text, visual polish |
| optimizing-streamlit-performance | Caching, fragments, forms, static vs dynamic widgets |
| organizing-streamlit-code | When to split into modules, separating UI from logic |
| setting-up-streamlit-environment | Python environment, dependency management |
| using-streamlit-custom-components | Third-party components from the community |
| using-streamlit-cli | CLI commands, running apps |
| using-streamlit-layouts | Sidebar, columns, containers, tabs, expanders, dialogs, alignment, spacing |
| using-streamlit-markdown | Colored text, badges, icons, LaTeX, and all markdown features |
| using-streamlit-session-state | Session state, widget keys, callbacks, state persistence |
Resources
When not to use it
- →When developing applications not based on Streamlit
- →When the primary focus is on backend API development
- →When building custom components that are not Streamlit-specific
Limitations
- →Primarily focused on Streamlit application development
- →Relies on the existence and functionality of specialized sub-skills
- →Does not cover non-Streamlit specific Python development
How it compares
This workflow provides a structured entry point to a collection of specialized Streamlit development skills, offering targeted guidance for specific problems, unlike general Python development that lacks this focused expertise.
Compared to similar skills
developing-with-streamlit side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| developing-with-streamlit (this skill) | 0 | 4mo | No flags | Beginner |
| streamlit | 86 | 9mo | No flags | Intermediate |
| dashboard-build | 6 | 2mo | Review | Advanced |
| building-streamlit-multipage-apps | 0 | 4mo | No flags | Beginner |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
streamlit
sverzijl
When working with Streamlit web apps, data dashboards, ML/AI app UIs, interactive Python visualizations, or building data science applications with Python
dashboard-build
mckinsey
A skill that should be invoked whenever a user wants to build a Dashboard or simple app. This skill is Phase 2 of an e2e process that covers the actual build and testing. For Phase 1 (requirements, layout design, visualization selection), use the dashboard-design skill.
building-streamlit-multipage-apps
igonro
Building multi-page Streamlit apps. Use when creating apps with multiple pages, setting up navigation, or managing state across pages.
anywidget-marimo
diegosouzapw
Toolkit for generating custom widgets from scratch for Marimo.
building-data-apps
ironkid90
|
dashboard-view-builder
gitwalter
Building and managing premium statistical dashboards, RAG explorer UIs, warehouse log monitors, and real-time visualization centers.