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.
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.
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.
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.
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).
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.
its used for more than data visualization, i've deployed functional web tools that interact with external APIs and internal databases for work. Streamlit may seem like a "fun data viz tool" but its really pushing the limits of building functional web pages purely in Python. exciting to see where this goes in 2-3 years
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.
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.
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.
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
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.
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.
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?