Premium

Drag & Resize Dashboard

By FrontendAtlas Team · Updated Jan 30, 2026

Design a customizable dashboard made of widgets that the user can rearrange and resize. Widgets live on a grid layout, can be dragged to reorder/change position, and resized via handles. The dashboard layout is persisted (e.g. localStorage snapshot) so the user sees the same configuration…

  • Requirements exploration
  • Architecture / High-level design

What you’ll build / What this tests

This premium front-end system design system design focuses on Drag & Resize Dashboard. You’ll apply dashboard and drag-drop thinking with intermediate level constraints. The prompt emphasizes Design a customizable dashboard made of widgets that the user can rearrange and resize. Widgets live….

Learning goals

  • Decompose Drag & Resize Dashboard into front-end components, state, and data flow.
  • Apply dashboard, drag-drop, performance constraints to a real client architecture.
  • Define performance budgets and UX trade-offs for the interface.
  • Plan instrumentation and resilience for user-facing failures.

Key decisions to discuss

  • Choose a data model that matches UI reads and writes.
  • Pick a pagination + caching strategy to keep the UI fast.
  • Set performance budgets (LCP/INP) and validate with telemetry.

Evaluation rubric

  • Architecture: clear client data flow and component boundaries.
  • Performance: budgets + caching/virtualization where needed.
  • Resilience: offline/error states and retries defined.
  • Observability: metrics/logs to validate UX and perf.

Constraints / Requirements

  • Design a customizable dashboard made of widgets that the user can rearrange and resize. Widgets live…
  • Requirements exploration
  • Architecture / High-level design
  • Data model
  • Interface definition (API)
  • Optimizations and deep dive
  • Assume real users and real latency; budget for perceived performance.
  • Define client-side caching and invalidation strategy.
  • Plan pagination or windowing for large UI lists.
  • Account for dashboard, drag-drop, performance constraints in the UI.

Mini snippet (architecture sketch)

Constraints:
- P95 UI response < 200ms
- 1k+ events/sec during peak
- Focus: dashboard, drag-drop

Components:
- Client cache + pagination
- Realtime updates (SSE/WebSocket)
- Observability + error states

Endpoints:
- GET /feed?cursor=
- POST /events

Common pitfalls

  • Ignoring pagination/virtualization for long feeds.
  • Underestimating client performance budgets.
  • Overfetching data or failing to cache responses.
  • Skipping failure states and retry UX.

Related questions

Upgrade to FrontendAtlas Premium to access this system design scenario. Already upgraded? Sign in to continue.