Repository navigation
v0.3.1
Performance optimizations
Comprehensive render pipeline optimizations delivering 20-110% throughput improvements across key scenarios, with no API or behavior changes.
Highlights
| Scenario | Improvement |
|---|---|
| xh-if true | +113% |
| 4 class toggles | +93% |
| 1 text bind render+swap | +48% |
| xh-if false | +40% |
| nav menu 8 items | +26% |
| counter update | +20% |
| list 50 update | +22% |
Changes
- Pre-compute numeric binding type codes in render plan
- Skip child creation when xh-text/xh-html will overwrite
textContent = ''instead ofinnerHTML = ""in performSwap- Batch
classList.addcalls in plan bindings - Single
instanceof MutableDataContextcheck per render - Shared frozen
PROCESSED_STATEconstant - WeakSet replaces
data-xh-each-itemsetAttribute - Eliminate
renderItemclosure in plan-based processEach - Compiled render plans with direct DOM creation
- Inline plan bindings bypass DOM setAttribute round-trip
- Eliminate redundant DOM scans, cache hot paths, fix resource leaks
See CHANGELOG.md for full details.