The official blog of Streamlit, a Python framework for data apps, with release notes, tutorials, and user examples.
HN links it for release announcements, the Snowflake acquisition, multipage apps, and example projects, and commenters describe Streamlit as an R Shiny for Python.
Thanks for the response and context. I work in a different domain to data science and it's fair to say that most people I work with would prefer writing a few 10s of lines of python than many pages of SQL!
Regarding your second point, looking at streamlits announcements page [1] it seems many features being added, layouts/themes and session state/callbacks for example, indicate to me that streamlit is heading in the direction of panel/dash more than the other way. Streamlit also emphasizes using decorators for caching [2], which I agree can end up with some overall state that is a bit magic.
Overall I think the optimal use cases are a bit different for the sets of tools, and I find the approach of dynamically calculating a full script for every change of a slight widget quite onerous, and actually just not feasible for the use cases I have.
[1] https://blog.streamlit.io/tag/announcements/
[2] https://blog.streamlit.io/six-tips-for-improving-your-streamlit-app-performance/
Yes you’re definitely right - I’ve recently started using SeleniumBase for Python which includes a few extra niceties. I was more asking about the part where you compare between releases (or test suite runs) to see if anything changed. I suppose you can just use compare hashes, but I could imagine also having some feature that highlights changes on the screenshot.
SeleniumBase has a feature that looks at markup and which stores screenshots for visual comparison to a set baseline: https://seleniumbase.io/examples/visual_testing/ReadMe/
Found this blog describing use of SeleniumBase for that and OpenCV for screenshot comparison as another layer: https://blog.streamlit.io/testing-streamlit-apps-using-seleniumbase/
The company announcements are https://blog.streamlit.io/snowflake-to-acquire-streamlit/ and
https://investors.snowflake.com/news/news-details/2022/Snowflake-Announces-Intent-to-Acquire-Streamlit-to-Empower-Developers-and-Data-Scientists-to-Mobilize-the-Worlds-Data/default.aspx
We changed the URL above to what seems to be the best third party article (for reasons I was explaining in a different thread earlier: https://news.ycombinator.com/item?id=30531133).
I haven't evaluated the OP's package yet, but Streamlit is like an Rshiny for Python. I'm not connected to the project, just liked what I used of it.
Best guess is OP's package gives finer grained control over display elements, which definitely has a place.
[0] https://blog.streamlit.io/how-to-build-a-real-time-live-dashboard-with-streamlit/
Definitely, combined with the HN API. We built a user lookup app: https://blog.streamlit.io/finding-your-look-alikes-with-semantic-search/
Repo: https://github.com/streamlit/hello/blob/main/README.md
Blog post: https://blog.streamlit.io/introducing-multipage-apps/