Render performance

Hi!

I have a list of elements that each take about 0.05 seconds to render (including multiple widgets per element). With 100 items, the total render time is 5 seconds.

I’ve tried using st.cache_data and st.fragments, but while fragments help with updating elements, they don’t prevent full list re-renders when adding/removing items.

My current solution is pagination - showing 10 elements per page. I’m looking for:

  1. How to implement lazy loading triggered by scrolling in Streamlit
  2. Other approaches to optimize rendering performance

Thanks!