indico / indico-checkin-pwa

MIT License
2 stars 5 forks source link

Improve performance of participant table for large number of participants #48

Closed tomasr8 closed 3 months ago

tomasr8 commented 5 months ago

Deployed here: https://indico-checkin-test-2.app.cern.ch/

We currently render the whole table which gets sluggish when there's a lot of participants (10k+). The list now uses infinite scrolling instead which makes it much more responsive.

Additionally, we normally preload all data from IndexedDB before switching to a new page (e.g. when navigating to a regform). With a large participant list, this introduces a visible lag when preloading all participants from the DB. I changed it so that the participants are loaded after the page is loaded. Note that, short participant lists will never see a difference since they are fast to load anyway.

More UX improvements based on feedback:

github-actions[bot] commented 3 months ago

📝 Lighthouse report