Virtualization Strategies
Reduce rendering overhead for long lists, feeds, and comment timelines.
Pattern level: meso
Reduce rendering overhead for long lists, feeds, and comment timelines.
Pattern level: meso
Render only what the viewport needs, while preserving navigation and measurement stability.
Add trade-off rows in this section to compare options.
| Category | Level | Requirement | Done When |
|---|---|---|---|
| functional | unit | State transitions handle loading, success, empty, and error. | Reducer/state machine tests cover all transitions. |
| functional | integration | Client correctly maps API contracts into UI-ready view models. | Contract fixtures pass with no runtime shape mismatch. |
| a11y | integration | Full keyboard flow works for primary interaction loop. | Tab/Shift+Tab/Enter/Escape scenarios pass for critical controls. |
| a11y | e2e | Dynamic updates expose meaningful live region announcements. | Manual SR checks validate announcement timing and text quality. |
title: Virtualization Strategies summary: Compare fixed-size and dynamic-size virtualization for large lists. kind: pattern level: meso tags:
Use fixed-size virtualization when row heights are predictable; use dynamic-size only when content variability is required and measured.
Render only visible rows plus overscan while preserving a stable scroll anchor.
Balance CPU cost, memory pressure, and implementation complexity against list size volatility.
| Category | Level | Requirement | Done When |
|---|---|---|---|
| functional | unit | State transitions handle loading, success, empty, and error. | Reducer/state machine tests cover all transitions. |
| functional | integration | Client correctly maps API contracts into UI-ready view models. | Contract fixtures pass with no runtime shape mismatch. |
| a11y | integration | Full keyboard flow works for primary interaction loop. | Tab/Shift+Tab/Enter/Escape scenarios pass for critical controls. |
| a11y | e2e | Dynamic updates expose meaningful live region announcements. | Manual SR checks validate announcement timing and text quality. |