Streamlit Explained: Python Tutorial for Data Scientists

In this Python tutorial, I’ll dive into Streamlit, a tool that simplifies the creation of web applications for your data science projects. Additionally, I’ll discuss the differences between Streamlit and other libraries like Dash and Taipy.
🔥 GitHub Repository: git.arjan.codes/2024/streamlit
✅ Get the FREE Software Architecture Checklist, a guide for building robust, scalable software systems: arjan.codes/checklist.
📨 The Friday Loop by ArjanCodes Newsletter: thefridayloop.com
💻 ArjanCodes Blog: www.arjancodes.com/blog
✍🏻 Take a quiz on this topic: www.learntail.com/quiz/mpmlss
🎓 Courses:
The Software Designer Mindset: www.arjancodes.com/courses/tsdm
The Software Architect Mindset: www.arjancodes.com/courses/tsam
Next Level Python: Become a Python Expert: www.arjancodes.com/courses/nlp
The 30-Day Design Challenge: www.arjancodes.com/courses/30ddc
👍 If you enjoyed this content, give this video a like. If you want to watch more of my upcoming videos, consider subscribing to my channel!
Social channels:
💬 Discord: discord.arjan.codes
🐦 X: x.com/arjancodes
🌍 LinkedIn: / arjancodes
🕵 Facebook: / arjancodes
📱 Instagram: / arjancodes
♪ Tiktok: / arjancodes
👀 Code reviewers:
- Yoriz
- Ryan Laursen
- Dale Hagglund
- Kit Hygh
- Alexander Milden
- Bean
🎥 Video edited by Mark Bacskai: / bacskaimark
🛒 GEAR & RECOMMENDED BOOKS: kit.co/arjancodes
🔖 Chapters:
0:00 Intro
1:01 Installation
1:53 Hello World
4:57 Adding a plot
6:59 Adding a sidebar with a config
9:53 Adding multiselects
10:56 Publishing an application
11:40 How’s it different from Dash or Taipy
14:31 Outro
#arjancodes #softwaredesign #python
DISCLAIMER - The links in this description might be affiliate links. If you purchase a product or service through one of those links, I may receive a small commission. There is no additional charge to you. Thanks for supporting my channel so I can continue to provide you with free content each week!

Пікірлер: 45

  • @ArjanCodes
    @ArjanCodesАй бұрын

    ✅ Get the FREE Software Architecture Checklist, a guide for building robust, scalable software systems: arjan.codes/checklist.

  • @pabloosorio6647
    @pabloosorio6647Ай бұрын

    I really appreciate how you zoomed out at the end to highlight the key differences between Streamlit, Dash, and Taipy. This adds a lot of value and sets your channel apart from basic tutorials.

  • @ArjanCodes

    @ArjanCodes

    Ай бұрын

    Glad to hear you enjoy the content!

  • @Alticroo
    @AlticrooАй бұрын

    There is another framework, called nicegui, which is apparently inspired by streamlit. But it doesn't run from top to bottom on every interaction, and gives lower level access to styles and other front end goodies.

  • @The4dGoonSpoon
    @The4dGoonSpoonАй бұрын

    Love Streamlit, one of my favorite tools.

  • @martincronje5242
    @martincronje5242Ай бұрын

    I love streamlit, it makes me a super hero doing very little work. It's not a full stack application, but when a customer is unsure what they want, or the requirement is simple, i don't look any further.

  • @draghi
    @draghiАй бұрын

    I'm using Streamlit quite often for pet projects and proof of concepts, or to test REST APIs. I think the running model of Sreamlit - run a Python script from the beginning to the end on any user action is worth mentioning. It is what allows Streamlit to be so easy for relative easy tasks, but also makes more complex solutions more complicated. The (global) session state and the recently introduced experimental_fragment could also be used to mitigate this issue.

  • @wexwexexort
    @wexwexexortАй бұрын

    I have used streamlit recently. It's useful for a quick dashboard, and I think it kind of makes data analysis easier. There is no learning curve, if you know python it should take a few hours. Didn't use it on production though. Running everything each time you refresh or change something may make it slow. But handling callbacks with Dash takes too much time. So I think streamlit is great for prototyping and small projects.

  • @wickedgummybear3104
    @wickedgummybear3104Ай бұрын

    I've used Streamlit to build a dashboard for showing backtesting financial data results and it works wonderful. I would have loved a bit more freedom in the design, but it does what it's supposed to do.

  • @Ultimate_Jeff
    @Ultimate_JeffАй бұрын

    I love Streamlit! Thanks for diving into it Arjan

  • @ArjanCodes

    @ArjanCodes

    Ай бұрын

    Glad to hear you enjoyed the video, Jeff!

  • @thomaspt8687
    @thomaspt8687Ай бұрын

    I Have already done a small project with streamlit. The one problem I find is it executes from top to bottom you may find it as not a problem, But every time a button click or any event occurs the whole scripts run from top to that event call. We have to use session state every where to keep the memory. But all in all, if you're somebody who is starting, its a very goo module. Because it gives visual satisfaction (You don`t have to study django to do a website).

  • @ArjanCodes

    @ArjanCodes

    Ай бұрын

    Good points - thanks for sharing that!

  • @thomaspt8687

    @thomaspt8687

    Ай бұрын

    @@ArjanCodes Actually i should thank you. Because i have learned a lot from you like poetry.

  • @brainforest88

    @brainforest88

    Ай бұрын

    Its even better. I didn't have to dive int CSS, Angular etc. Just markdown was good enough.

  • @estephaniacalvocarvajal594

    @estephaniacalvocarvajal594

    Ай бұрын

    One of the recent versions of Streamlit introduces the fragment component that allow you rerun a specific component instead the full page.

  • @thomaspt8687

    @thomaspt8687

    Ай бұрын

    @@estephaniacalvocarvajal594 thanks for the update will check it out. 💪💪💪💪

  • @anidiotsguide757
    @anidiotsguide757Ай бұрын

    I have used Streamlit to present the findings in a project once. I liked it and want to use it more. This video made me interested in designing a streamlit-app for my data science portfolio

  • @AyahuascaDataScientist

    @AyahuascaDataScientist

    Ай бұрын

    Whoopie

  • @estephaniacalvocarvajal594
    @estephaniacalvocarvajal594Ай бұрын

    I discovered Steamlit few weeks ago and I fall in love ... I'm not data scientists but backend developer and finally I could make my portfolio easy to access for no technical people.

  • @l0gic23

    @l0gic23

    4 күн бұрын

    Can we see it?

  • @andreaardemagni6401
    @andreaardemagni6401Ай бұрын

    What about the data you need to use for the app? How do you connect it to a DB?

  • @devilasks
    @devilasksАй бұрын

    Thank you for your ever-informative videos! Can you make one on how to actually deploy data apps of advanced complexity? There are always toy examples everywhere and mostly with static data. I would greatly appreciate if you could explain some architecture patterns for real-life data, i.e. multiple GB/TB per day in multiple batch jobs or even streaming applications. Maybe I am not the only one.

  • @akhiljp4797
    @akhiljp4797Ай бұрын

    Thanks @ArjanCodes for the excellent videos. Could you please do a video on Python Dependency Mananger (pdm) package. I have been using poetry for a while, but recently tried pdm. Liked it better, especially the hooks. Looking forward for a side by side comparison on poetry and pdm.

  • @RymGuerbi
    @RymGuerbi22 күн бұрын

    Thanks for this impartial and complete video. However have you seen that Taipy has now a Python API?

  • @ArjanCodes

    @ArjanCodes

    21 күн бұрын

    Good to know, thanks for sharing!

  • @itopaloglu83
    @itopaloglu836 күн бұрын

    The vide is full of great content, but it also feels like it's skipping a lot of the building steps. I hope you can make some of your deep dive videos where you start from a clean sheet and create an app. This video feels like one of those old tv shows where they say they'll teach you how to make a toy house, but within the minute two they show you an already completed house.

  • @James-vd3xj
    @James-vd3xjАй бұрын

    When is the Angular, FastAPI, SQLModel tutorials coming? ;-)

  • @estephaniacalvocarvajal594
    @estephaniacalvocarvajal594Ай бұрын

    Gradio is other great library ... I think Hugging face is built it with it

  • @Soltaiyou
    @SoltaiyouАй бұрын

    What happened to your clackity clack mechanical keyboard? I missed it! 😂

  • @ArjanCodes

    @ArjanCodes

    Ай бұрын

    Mechanical keys are coming back soon - but I’m going to switch to the Keychron Q5 😎.

  • @danchiriac9484
    @danchiriac9484Ай бұрын

    1st

  • @orlanino
    @orlaninoАй бұрын

    I'm getting an error File "/home/.../.venv/lib/python3.10/site-packages/py_wanderer/plotter.py", line 21, in plot_maze_with_paths cmap = cm.get_cmap("tab20") It's deprecated. The only way I succeeded in fixing it is by changing the above line to cmap = colormaps.get_cmap("tab20") Any ideas?