Not sure whether there are anything similar for SD though.
That said, I’ve found it to be clunky in a few ways:
1. State management is not intuitive — anything that involves rendering complex state/reacting at it changes requires a ton of session state type stuff.
2. I’ve very often had to go into css/markdown hacks
3. The control flow of when it’s running/executing makes for clunky interactions
4. Some API decisions are painful. For instance, a block str comment in the file will render as st.write
5. Long running (or even not instant tasks) make for some annoying engineering challenges — the UI is tied to the compute, so you have to be smart about juggling it
6. Caching is not smart — it’s quite useful, but it’s easy to get lost in caching/state
I’ve been dreaming about streamlit but a little more state/function oriented. E.g. react-based. Not far from fastUI
These are both great tools for prototyping, but I’ve found that I’ll pull up tailwind + some UI framework when I want something slick and it’ll take a few times as long.
1. The chat context is always provided, and that introduces a bit of uncertainty - when the chat history mentioned something the model is always inclined to connect with it.
2. When I tried to set each context to an empty string, the model doesn't show any evidence of remembering concepts. I told it 5 times that I love cats, and when asked about its favorite animal, its output remains "honeybee" and "octopus".