Skip to content

perf(dropzone): add virtualization for large DropZone content#1525

Open
LPIX-11 wants to merge 2 commits intopuckeditor:mainfrom
LPIX-11:perf/dropzone-virtualization
Open

perf(dropzone): add virtualization for large DropZone content#1525
LPIX-11 wants to merge 2 commits intopuckeditor:mainfrom
LPIX-11:perf/dropzone-virtualization

Conversation

@LPIX-11
Copy link

@LPIX-11 LPIX-11 commented Jan 21, 2026

Description

This PR adds virtualization support for DropZone content lists to handle scenarios with many heavy components. When rendering 50+ components, especially those with complex nested structures or expensive render cycles, the editor would become sluggish during scrolling and editing. Virtualization ensures only visible components are rendered at any time.

Changes made

  • Add @tanstack/react-virtual to virtualize DropZone content exceeding 50 components
  • Create VirtualizedContent component to handle windowed rendering

How to test

  • Create a DropZone with 100+ (goes as far as 5000) heavy components (e.g., components with nested DropZones, rich text fields, or complex layouts)
  • Verify smooth scrolling and responsive editing
  • Verify DropZones with <50 components still render normally without virtualization
@vercel
Copy link

vercel bot commented Jan 21, 2026

Someone is attempting to deploy a commit to the Puck Team on Vercel.

A member of the Team first needs to authorize it.

@vercel
Copy link

vercel bot commented Jan 21, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
puck-demo Ready Ready Preview, Comment Jan 21, 2026 8:33am

Request Review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant