Itās amazing how easy it is to build dynamic web apps with Streamlit !
I needed a panel of repeating elements for a project. To show what i mean I made this example for you (see below): You can select elements (āeventsā) and then enter a date for each element. After clicking the āSort by Dateā-button the elements/āeventsā will be sorted by date. This was only possible by using st.session_state() and st.experimental_rerun() (please tell me if thereās a better way to do this). It would be wonderful if st.experimental_rerun() would find its way to Streamlit core someday
Nice one! Rerun and session state is a reasonable way to do this. If you want more interactivity (drag & drop, fancy styling, different views, etc.) then Streamlit supports component extensibility using React and other web frameworks.
Thank you @asehmi! Probably I should use react for creating customized components⦠However, I havenāt used React for ages so i tried to solve my problem in pure Python
I think streamlit-elements holds the key for those of us who canāt go deep into React components but still are able to achieve some magic. Not that Streamlit itself isnāt magic enough!!