Streamlit documentation
Streamlit is an open-source Python framework for data scientists and AI/ML engineers to deliver dynamic data apps with only a few lines of code. Build and deploy powerful data apps in minutes. Let's get started!
How to use our docs
Get started with Streamlit! Set up your development environment and learn the fundamental concepts, and start coding!
Develop your Streamlit app! Our API reference explains each Streamlit function with examples. Dive deep into all of our features with conceptual guides. Try out our step-by-step tutorials.
Deploy your Streamlit app! Streamlit Community Cloud our free platform for deploying and sharing Streamlit apps. Streamlit in Snowflake is an enterprise-class solution where you can house your data and apps in one, unified, global system. Explore all your options!
Knowledge base is a self-serve library of tips, tricks, and articles that answer your questions about creating and deploying Streamlit apps.
What's new
Dynamic containers
st.tabs, st.expander, and st.popover can track open/closed state and trigger reruns with the new on_change parameter.
Widget binding
Most non-trigger widgets have a bind parameter to sync widget state with URL query parameters.
Clickable images
st.image has a link parameter to make images clickable with HTTP/HTTPS URLs.
Hidden pages
st.Page has a visibility parameter to hide pages in the navigation menu while keeping them routable.
CSS colors in Markdown
Markdown supports arbitrary CSS colors for text foreground and background styling.
speedMetric delta descriptions
st.metric has a delta_description parameter to display descriptive text next to delta values.
Latest blog posts
Join the community
Streamlit is more than just a way to make data apps, it's also a community of creators that share their apps and ideas and help each other make their work better. Please come join us on the community forum. We love to hear your questions, ideas, and help you work through your bugs — stop by today!
View forum
