Hey everyone!
I’d like to let the community know about this new component I’m working on called Streamlit Flow. It is a streamlit component wrapper over the Flow diagram library React Flow.
For some project that I was working on, I needed the ability to create interactive flow diagrams. I had a look at graphviz, but that doesn’t have intractability from what I saw. Barfi looked promising, but it didn’t quite hit the right spot. I came across React Flow, that has an absolutely stunning UI and a lot of interactive capabilities. Turns out that there already exists a streamlit-react-flow component, but it doesn’t have a lot of the features I needed, and is not currently maintained. As such, I decided it was time to get my hands dirty
I think I have made decent progress in porting a lot of the functionality of React Flow into Streamlit Flow, but being the mature and complex ecosystem that React Flow is, a full (or nearly full) port is going to take significant time and effort.
Some features include:
- Super fast flow building
- Flexible node and edge elements
- Built-in layout engine (ElkJS)
- Capturing Component Interaction within Python
There are a lot more details in the README file of the repo:
The Component is now available on PyPI. Install it using
pip install streamlit-flow-component
Would love to hear some feedback from the community, to see what direction to drive this project in. Cheers!