Looked but don’t find anything relevant. I’d like to notify users of an action “e.g. email sent” then is shown then disappears after n seconds. SOmething like a toast or notification popup.
I’ve looked st.info, st.success etc, however these messages remain until the next render cycle.
If you have multiple messages that you need to display from say… within a loop, or a long process, you can define an empty placeholder (eg. mymsg = st.empty() and then later reference that empty placeholder with say… mymsg.info(‘show my message #n’). In this case, the subsequent message will overwrite the previous message in the same place, giving you that intended effect.
Alternatively, if you want something like a toast, you could import another library at the link (streamlit-javascript · PyPI) and pass the an alert JS function with your message, within the st_javascript function. However, this will give you an Ok button to click on, to close your message.
There are other toast libraries (with the timed disappearing messages) on pypi that work with python, but I have not tried them with Streamlit). Hence, I have not recommended them - you’ll need to do some R&D on that.