-
released this
2026-01-18 18:04:31 -06:00 | 4 commits to master since this releaseBranding tweaks (removal of old references and update to ECHO REALITY).
Also,
Completed Optimizations
JavaScript (
src/app.js)-
Title Scroll Animation - Replaced
setIntervalwithrequestAnimationFrameand cached container/text dimensions. Dimensions are now only recalculated on track change or window resize instead of every scroll tick. -
Throttled timeupdate Handler - Added 200ms throttling to reduce DOM updates from ~4Hz to ~5Hz, and skips updates when formatted time hasn't changed.
-
Cached Noise Buffers - Pre-generates click noise buffer (20ms) and tape wind noise buffer (1 second) once on AudioContext initialization, then reuses them for all sound effects.
-
Parallel Track Duration Loading - Track metadata now loads in parallel using
Promise.all()for tracks 1-4 after track 0 loads, significantly reducing total loading time.
CSS (
assets/styles.css)-
will-change Optimizations:
- Added
will-change: opacityto.display::after(scanlines flicker animation) - Added
will-change: transform, opacityto.vhs-tracking.activestates
- Added
-
Dim Spots Optimization:
- Added
contain: strictto.dim-spots-containerto isolate paint scope - Reduced dim spots from 5 to 3 (removed spots 4 and 5 and their associated keyframe animations)
- Added
HTML (
index.html)-
Preconnect Hint - Added
<link rel="preconnect" href="https://esm.sh">for faster simple-boost script loading. -
Reduced DOM Elements - Removed 2 dim-spot elements from HTML (now 3 instead of 5).
Downloads
-