Skip to content

[Performance] Audit and reduce animation-triggered layout reflow across all components #55259

Description

@Nareshkumawat-star

Describe the problem
Issue #482 addresses ease-fade-in specifically, but the problem likely extends to other components. Animating layout-triggering properties (width, height, top, left, margin, padding) causes the browser to recalculate layout on every animation frame, leading to jank on lower-end devices.

Scope of this issue
Conduct a full audit of all @keyframes in the framework and identify any that animate:

  • width / height (replace with transform: scaleX() / scaleY())
  • top / left / right / bottom (replace with transform: translate())
  • margin / padding
  • font-size (replace with transform: scale() where possible)

Deliverable

  1. Audit report comment listing all offending @keyframes with their files
  2. PRs replacing each with GPU-composited equivalents (transform, opacity)
  3. Add will-change: transform, opacity only where the animation is known to run (document the tradeoff)

Why this matters
EaseMotion CSS is positioned as "lightweight and performant." Reflow-triggering animations directly undermine this — especially on mobile and low-power devices.

Note: This is a meta/audit issue, distinct from #482 which addresses only ease-fade-in.

Metadata

Metadata

Assignees

Labels

GSSoC-26Official GSSoC 2026 issueacceptedContribution approved for integration into EaseMotion CSSanimationAnimation effects, hover interactions, motion ideas, transitionsgood first issueGood for newcomershelp wantedExtra attention neededlevel:intermediateRequires moderate project understanding

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions