Appica UIUI 1.0.0

Reduced Motion Provider

Force-disable animations for any subtree.


ReducedMotionProvider opts a subtree out of animation. Components already honor the OS prefers-reduced-motion setting on their own — this provider is the explicit, global override (for a user preference toggle, demos, or tests).

Usage

When disableAnimations is set, the provider writes a data-disable-animations attribute to <html>. That's deliberate: it has to reach Base UI's portaled popups, which render under document.body and so escape the React subtree.

Two channels

The provider drives motion through two coordinated channels:

  • CSS — the data-disable-animations attribute on <html> triggers the motion-reduce variant page-wide (popups included). This is what stops component transitions. See Animation.
  • JavaScriptuseReducedMotion, scoped to this provider's React subtree, returns true so your own animation code can branch.

Props

© 2026 Appica UI. A free component library, crafted by the Appica team.