
Set up a Windows development environment for Streamlit with Anaconda, create and activate a conda virtual environment, install Streamlit, and verify by running streamlit hello.
Explore Streamlit, an open source Python library for deploying machine learning models and dashboards with Python, and understand its development flow, data flow, and caching to speed apps.
Learn to build a basic Streamlit app from a clean environment: activate your virtual environment, create main.py, import Streamlit, display hello world, run Streamlit, and see live browser updates.
Learn how to display text in a Streamlit app using titles, headers, markdown, captions, and code blocks, plus pre formatted text, latech equations, and dividers, with st.write for flexible output.
Display tabular data in Streamlit by loading a CSV with pandas and showing a data frame. Use st.table for static tables and st.metric for labeled values with delta color.
Explore charting elements in Streamlit using line, area, bar charts and maps; learn interactivity, data frames, and how to integrate Matplotlib, Plotly, Altair for enhanced visuals.
Explore input widgets in Streamlit to add interactivity to apps with buttons, checkboxes, radio buttons, and select boxes, and see how the user interface updates with user input.
Explore advanced Streamlit input widgets, including multi select with default values and max selections, a slider, a number input, text inputs, text areas, and widget forms.
Group input widgets into a Streamlit form with a submit button to batch updates, using select boxes, a checkbox, date and time inputs, and a text area.
Explore how to customize Streamlit layouts using sidebars, columns, tabs, expanders, and containers to organize content and enhance app interactivity, preparing you for the capstone project.
Build an interactive Streamlit dashboard capstone to explore Canada's quarterly population, featuring data source link, collapsible data table, date and location filters, and comparison charts with robust error handling.
Build the capstone project by creating an interactive Streamlit dashboard to analyze population data with start/end date controls, quarters, and locations; validate inputs and display comparisons and plots.
Learn how Streamlit caching speeds apps by storing results with cache data and globally across sessions with cache resource, using decorators to cache data and resources such as ML models.
Explore how caching data and caching resources in Streamlit boosts app performance, comparing slow, uncached functions with cached ones and demonstrating a simple linear regression model lifecycle.
Refactor a dashboard in Streamlit by introducing caching with st.cache_data, turning data loading and date formatting into cached functions for faster, cleaner UI and improved capstone project performance.
Discover how Streamlit caches data, handles concurrency and mutation, uses cache data versus cache resource, and controls cache duration for large datasets.
Deploy a classification model capstone using streamlit to predict edible versus poisonous mushrooms from encoded features, with gradient boosting and caching for faster predictions.
Refactor the capstone by training the model once offline, saving and loading it in the streamlit app, and using a scikit-learn pipeline to automate preprocessing and predictions.
Explore how Streamlit session state and cache differ, and learn to initialize, read, update, and delete session state values that persist across runs within a user session, with key-value semantics.
Learn to manage state in Streamlit by initializing, updating, and deleting session state values using key-value and attribute syntax, with practical demos in starter.py and a live app.
Link session state to widgets via the key parameter to modify values and run callbacks, then review caveats like form limits and ephemeral button behavior.
Explore advanced state management in Streamlit by storing widget values in session state, initializing values, and building callbacks to sync start and end dates with a time delta.
Demonstrate callbacks and state management by building a temperature converter in Streamlit, using session state, arguments, and keyword arguments to convert between Celsius, Fahrenheit, and Kelvin.
Capstone project demonstrates deploying a regression model with Streamlit, using session state to input miles, year, make, model, engine size, and province to estimate car price.
Learn to build multi-page Streamlit apps with a central entry point, organized pages, and data sharing through session state, plus page configuration like title, favicon, and layout.
Build a multi-page Streamlit app and share data across pages with session state. Start with a small dataframe, then multiply results from two inputs and examine a state-tracking bug.
Identify widget state bug in multi-page apps caused by widget lifecycle, then apply workaround: treat keys as temporary and use permanent keys with a callback to store and restore values.
Implement a session state workaround for multipage apps in Streamlit by initializing permanent keys, creating keep functions, and wiring on change callbacks to preserve widget values.
Train and rank multiple classification models on the wine dataset, apply feature selection, and evaluate with F1 scores to produce a model ranking dashboard in a Streamlit capstone project.
Enable basic authentication in a Streamlit app using the built-in authentication and a secrets.html file, then verify credentials with session state—suitable for prototypes but not as secure as ssl.
Implement a basic login component in a Streamlit app by using a secrets.toml file, initializing session state, and validating a password and username through a simple login form.
Install and explore Streamlit Authenticator to securely manage credentials with session state and JWT cookies, offering password hashing, login/logout, password reset, user registration, and a single configuration file setup.
Explore how to implement user authentication in Streamlit using Streamlit authenticator, configuring a yaml file, hashing passwords, managing cookies, and handling login, logout, password reset, and user management.
Capstone project shows clustering to inform a marketing campaign via a Streamlit app, with data science and marketing team views, comparing k-means and agglomerative clustering using silhouette scores.
Connect your Streamlit app to databases and APIs, store database secrets, cache queries with TTL, and fetch API data using the requests library to parse JSON.
Connect a Streamlit app to a free Supabase database, create a car parts monthly sales table, import data, and query it with the Python client for display.
Make API calls to fetch data from Project Gutenberg via the good index API, build a Streamlit search interface by author or title, and display results.
Participate in a capstone project that forecasts product demand from a Supabase database, uses Crofton's method via StatsForecast, and downloads predictions as a CSV from a Streamlit app.
Deploy your Streamlit app with render by listing dependencies in requirements.txt, hosting code on GitHub, and configuring a web service with build and start commands for a live app link.
Learn to deploy your first Streamlit app to render by linking GitHub, preparing a minimal requirements.txt, and launching with streamlit run main.py on the free tier.
Advance deployment concepts by using pip Rexx to trim dependencies, setting the Python version as an environment variable, and securely handling secrets for render and streamlit deployment.
Deploy a Streamlit app with secrets; it demonstrates environment variable management, a robust build command, and secrets handling on render for deploying a database forecast app using Supabase data.
Build and deploy interactive machine learning apps on Streamlit with inputs, forms, caching, and authentication; then take next steps by building your own app and exploring components or Gradio.
The complete course to deploy machine learning models using Streamlit. Build web applications powered by ML and AI and deploy them to share them with the world.
This course will take you from the basics to deploying scalable applications powered by machine learning. To put your knowledge to the test, I have designed more than six capstone projects with full guided solutions.
This course covers:
Basics of Streamlit
Add interactive elements, like buttons, forms, sliders, input elements, etc.
Display charts
Customize the layout of your application
Capstone project: build an interactive dashboard
Caching
Performance enhancement with caching
Basic and advanced usage of caching
Capstone project: deploy a classification model
Session state management
Add more interactivity and boost performance with session state management
Basic and advanced usage of session state
Capstone project: deploy a regression model
Multipage applications
Build large apps with multiple pages
Capstone project: train and rank classification models
Authentication
Add a security layer with authentication
Add login/logout components
Advanced authentication with user management, reset password, etc.
Capstone project: deploy a clustering model for marketing
Connect to data sources
Connect to databases
Access data through APIs
Capstone project: Deploy a sales demand model
Deployment
Deploy a Streamlit app for free
Advanced deployment process with secrets management and environment variables