Looks expensive. Runs cheap. Infinite 2D wall with momentum + depth. Virtualized so your page stays fast.
Make it with Workshop
Build your own component with AI
Drop it in, feed it any Framer components/images, and drag (or wheel) through an endless 2D canvas.The difference: it’s virtualized. It only renders what’s on screen (plus buffer). No “giant grid” tax. Just a smooth wall that scales.
Virtualized tiles: mounts only visible tiles + buffer. Lean DOM, steady perf.
No wrap-jumps: it feels infinite because the grid re-tiles as you move. No snap. No reset.
Link-safe drag: deadzone before drag starts + click suppression after dragging. No accidental clicks, no angry users.
Momentum you control: tune the glide, or kill it.
Depth without chaos: per-column parallax on Y (auto-off when Columns > 4).
No random shuffle: deterministic anti-repeat patterns. Stable, organic, predictable.
Columns: up to 12.
Rows: items per columns.
Gap: spacing in px.
Buffer: how far beyond the viewport we pre-render.
Parallax (0–1): 0.1–0.3 subtle, 0.5+ bold (disabled > 4 columns).
Wheel Scroll: on/off.
Deadzone: px before drag engages (keeps links clickable).
Drag Power / Drag Time Constant: inertia feel.
Press Effect + Scale: tactile feedback.
Parallax disables automatically when Columns > 4 to keep performance consistent.
This component won’t magically optimize your assets. If you feed it 20× 4K images, expect it to sweat. Optimize your media.