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!


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.


Introducing fragments!

Use the st.experimental_fragment decorator to turn functions into fragments that can rerun independently from the rest of your app.


Introducing st.html!

Render custom HTML in your app without an iframe.


Set looping and end times for media elements

You can enable looping for You can also set a start and end time.


Switch pages within st.AppTest

Switch pages in your tests using AppTest.switch_page().


LineChartColumn's new look

LineChartColumn no longer has an area fill. We've also addedAreaChartColumn so you can still have area-filled curves.


New popover element

Introducing st.popover to create popover elements in your Streamlit apps.

View all updates

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

Other Media