What is Streamlit?

Illustration showing the workflow of Streamlit: Code to Folder (GitHub) to Streamlit Cloud to App.
Image by Danni Liu

A couple of years ago, I discovered Streamlit while exploring the field of data science. I noticed some data scientists at my previous employment were using it to build their apps, and it immediately caught my attention as something cool to explore further. Although I made a mental note to dive deeper into it, I hadn't gotten around to it until recently. When Streamlit popped back into my thoughts a few days ago, I took it as a sign to give it a try. So, here we are today.

We'll cover:

  • What is Streamlit?
  • The History of Streamlit
  • Why Use Streamlit?
  • My Simple App

What is Streamlit?

Streamlit is an open-source application framework designed specifically for machine learning and data science teams. It allows users to turn Python scripts into shareable web applications quickly. I was skeptical about its ease until I tried it out today—it's genuinely user-friendly!

History of Streamlit

I generally like to know the backstory of things, including the tools I use. Streamlit was created in 2018 by Adrien Treuille, Amanda Kelly, and Thiago Teixeira. The tool emerged from their desire to simplify the process of creating interactive and shareable web applications for machine learning and data science projects. Their vision was to allow data scientists and machine learning engineers to develop powerful applications without needing extensive knowledge of front-end development technologies like CSS, HTML, or JavaScript.

Streamlit launched publicly in October 2019 and quickly became popular within the machine learning and data science communities for its simplicity and the immediate productivity boost it provided. As it grew, Streamlit introduced several new features, such as theming, custom components, and more sophisticated state management, enhancing its flexibility and power.

In 2022, Snowflake acquired Streamlit. Snowflake is a cloud-based data warehousing company that provides a platform to store, retrieve, analyze, and process data in a flexible, scalable, and efficient manner. This acquisition has allowed Streamlit to enhance its capabilities further.

Why Use Streamlit?

Streamlit is perfect for data scientists looking to deploy their models effortlessly. It is compatible with most Python libraries, such as pandas, matplotlib, seaborn, plotly, Keras, PyTorch, and SymPy (latex). Building impressive web applications with Streamlit doesn't require a lot of code, and you don’t need to know front-end languages such as HMTL, CSS, or JavaScript. Knowing basic Python is enough to create fully functional web applications. Even if you’re not a data scientist, but you’re into it or app development, it can still be a valuable tool to explore.

My Simple App

I spent an entire day learning and tinkering with Streamlit and, thanks to a few tutorials, ended up creating this simple, interactive stock price app.

Here it is… Danni's Simple Stock Price App
Feel free to play around with it and monitor stocks that interest you.

0:00
/1:31

If you want to give Streamlit a go, check it out here: Streamlit Documentation.

I think Streamlit is an amazing tool, and it is super easy to use—give it a try. Until next time… ciao!