Skip to content

Streamlit

Beginner → Intermediate · 4 topics

Streamlit turns a Python script into a web app — no HTML, CSS or JavaScript. It is the fastest way to put a UI on an LLM: a chatbot demo for a client, a RAG playground for your team, an eval dashboard, an internal tool. Most GenAI proof-of-concepts you'll see in interviews and at work are Streamlit apps.

pip install streamlit          # or: uv add streamlit
streamlit hello                # opens a demo in your browser
# Topic Sub-topics
1 Streamlit basics Running an app · the rerun model · text & data · widgets · status messages
2 Layout, state & caching Sidebar · columns · tabs · forms · session_state · cache_data vs cache_resource
3 Chat apps chat_message · chat_input · history · streaming with write_stream · model settings
4 Streamlit for GenAI PDF Q&A (RAG) app · showing sources · calling a FastAPI backend · secrets · deploying

Streamlit or FastAPI + React?

Streamlit for demos, prototypes, internal tools and dashboards — one person, one afternoon. FastAPI + a JS frontend for customer-facing products that need custom design, auth flows and many concurrent users. A common path: prototype in Streamlit calling your FastAPI backend, then replace only the UI later.

Next: NLP — the language basics underneath every LLM app.