Streamlit
Turn a Python script into a data app. Runs here in a faithful mini Streamlit simulator. 14 modules of 10 minutes each, with questions that check your answers in the browser.
Foundations
- 1. What Streamlit is; your first app and st.writeFreeTurn a Python script into a web app in a few lines, and meet st.write, the command that displays almost anything.
- 2. Running apps and the rerun modelFreeUnderstand the one idea that explains all of Streamlit's behaviour, the script reruns from top to bottom on every interaction, and run apps on your own computer.
- 3. Text, titles, markdown, and displaying dataFreeStructure a page with headings and markdown, highlight numbers with metrics, signal status with coloured messages, and show tables the right way.
- 4. Input widgets (button, slider, selectbox, text_input)FreeLet users filter and explore data with selectboxes, sliders, multiselects, text and number inputs, and wire them into pandas filters.
Intermediate
- 5. Layout: columns, tabs, sidebar, expanderFreeArrange an app into a sidebar of filters, a row of metrics, tabs for different views and expanders for details.
- 6. Showing DataFrames and chartsFreePick between Streamlit's quick built-in charts and full Plotly figures, prepare data in the right shape, and let widgets drive the charts.
- 7. session_state: remembering values across rerunsFreeKeep values between reruns with st.session_state, initialise it safely, connect widgets to it with keys, and react to changes with callbacks.
- 8. Caching with st.cache_data and st.cache_resourceFreeStop reloading files and re-running queries on every click by caching results, and learn which cache to use, how cache keys work and when to clear them.
Advanced
- 9. Forms and batching inputsProGroup several inputs behind one submit button so the app reruns once, validate the input, and clear the form after submitting.
- 10. File uploads and downloadsProLet users upload their own CSV or Excel files, validate them before use, and offer cleaned results and reports for download.
- 11. Multipage appsProSplit a growing app into pages with st.navigation and st.Page, group them into sections, share state between pages and link between them.
- 12. Connecting to a database or APIProQuery a database with st.connection and parameterised SQL, keep credentials in secrets, cache API calls, and handle failures gracefully.
Expert
- 13. Structuring a clean multi-file Streamlit appProOrganise a growing app into data, logic, chart and page modules, keep Streamlit at the edges, and test the logic without a browser.
- 14. Deployment and secrets managementProGet an app from your laptop onto a server colleagues can open, manage dependencies and secrets safely, and know what to check before sharing.
Track project
- Streamlit Project: Toko Kita's sales dashboardProThree graded tasks that build one dashboard step by step. Put the headline numbers on a page, add sidebar filters that change everything below them, and finish with a cached loader and a download button for the finance team.
Pro modules unlock with one payment of Rp 149.000, yours to keep.