Getting Started with Streamlit: Build Web Apps in Minutes with Just Python

Published on Balaram Gopal’s Blog
Have you ever wanted to turn your data scripts into interactive web apps without learning front-end frameworks like React or Angular? If yes, Streamlit is the answer you’ve been looking for!
In this blog post, we’ll explore what Streamlit is, why it’s awesome, and how to build your first interactive app in under 10 minutes. Let’s dive in!
🧠 What is Streamlit?
Streamlit is an open-source Python library that lets you create beautiful, interactive web apps directly from your Python scripts. It’s primarily used by data scientists and machine learning engineers for rapid prototyping, dashboards, and internal tools.
With Streamlit, you:
Don’t need HTML/CSS/JavaScript
Can use pure Python
Get real-time interactivity with just a few lines of code
💡 Why Use Streamlit?
🧱 Simple and Pythonic: No need to learn a new language.
⚡ Quick Setup: Create and deploy in minutes.
🎨 Beautiful UI: Built-in widgets and components.
🌍 Deploy Anywhere: Heroku, Streamlit Cloud, AWS, GCP, etc.
🛠️ Installing Streamlit
Open your terminal or command prompt and run:
pip install streamlit
🧪 Build Your First Streamlit App
Let’s create a simple app that takes user input and visualizes some data using matplotlib.
streamlit_app.py
import streamlit as st import pandas as pd import matplotlib.pyplot as plt
st.title("📊 Sales Dashboard")
uploaded_file = st.file_uploader("Upload your CSV file", type="csv")
if uploaded_file: df = pd.read_csv(uploaded_file) st.write("Here's a preview of your data:") st.dataframe(df.head())
if 'Month' in df.columns and 'Sales' in df.columns: fig, ax = plt.subplots() ax.plot(df['Month'], df['Sales'], marker='o') ax.set_title("Monthly Sales Trend") ax.set_xlabel("Month") ax.set_ylabel("Sales") st.pyplot(fig) else: st.warning("Make sure your CSV has 'Month' and 'Sales' columns.")
Run with it
streamlit run streamlit_app.py
Just like that, you have a working dashboard!
🌟 Cool Things You Can Build
🧬 Machine Learning model explorer
📈 Real-time dashboards
🔍 NLP summarization tools
🎮 Game scoreboards or logic puzzles
🧪 Data validation and profiling apps
☁️ Deploying Your App
You can deploy easily using Streamlit Community Cloud:
Push your code to GitHub.
Go to share.streamlit.io
Connect your repo and launch 🚀
Or use platforms like:
Render
Heroku
Vercel (via FastAPI + Streamlit integration)
🛠 Bonus: Streamlit Features You’ll Love
st.chat_message() – Create AI chatbot-like interfaces
st.experimental_data_editor() – Edit data inside your app
st.toggle(), st.tabs(), st.sidebar – Organize like a pro
Theme support and custom components
📚 Resources
🙌 Final Thoughts
Streamlit is transforming the way developers and data folks share insights and build tools. Whether you’re a data scientist or a Python developer looking to build quick UIs, Streamlit empowers you to ship faster with less code.
Have you built something cool with Streamlit? Share it with me in the comments!
Subscribe to my newsletter
Read articles from Balaram Gopal directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
