#virtual-list #egui #ui #list

egui_virtual_list

A virtual list widget for egui, with support for variable height items

9 breaking releases

0.10.0 Mar 26, 2026
0.9.0 Oct 12, 2025
0.8.0 Jul 11, 2025
0.7.0 Feb 7, 2025
0.2.0 Feb 7, 2024

#138 in #list

Download history 66/week @ 2026-03-05 34/week @ 2026-03-12 337/week @ 2026-03-19 81/week @ 2026-03-26 194/week @ 2026-04-02 140/week @ 2026-04-09 51/week @ 2026-04-16 33/week @ 2026-04-23 29/week @ 2026-04-30 98/week @ 2026-05-07 45/week @ 2026-05-14 13/week @ 2026-05-21 80/week @ 2026-05-28

240 downloads per month
Used in 4 crates

MIT license

36KB
277 lines

egui_virtual_list

egui_ver Latest version Documentation unsafe forbidden License

This crate adds a virtual list widget to egui. Egui has a basic built-in virtual list in the ScrollArea widget. This crate has some extra features though:

  • Supports items with varying heights
    • Heights are calculated lazily and cached, as you scroll further down the list
  • Supports custom layouts, so you could place multiple items in a single row
  • Allows for adding items at the top without the scroll position changing

There are some limitations though:

  • If you want to support a crazy amounts of items (1000000+ items), where you can instantly jump anywhere in the list, I recommend using egui's built in ScrollArea instead.
  • Horizontal scrolling is not supported yet, but it should be easy to add if needed.

If you want to build a infinite scroll list, I recommend using the egui_infinite_scroll crate instead, which is using this crate internally.

Dependencies

~11MB
~202K SLoC