R
fn

useDeviceMotion

v0.0.15testeddemo

Reactive `DeviceMotionEvent` exposing acceleration (with and without gravity), rotation rate, and the hardware sampling interval. SSR-safe, uses a single passive listener, and supports the iOS 13+ permission flow.

Examples

ts
const { acceleration, rotationRate, interval } = useDeviceMotion();
ts
// iOS 13+: request permission from a user gesture, throttle updates
const { ensurePermissions, acceleration } = useDeviceMotion({ eventFilter: throttleFilter(100) });
button.addEventListener('click', ensurePermissions);

Demo

Loading demo…

Signature

ts
export function useDeviceMotion(options: UseDeviceMotionOptions ={ ... }

Parameters

ParameterTypeDescription
options?UseDeviceMotionOptionsOptions

Returns

UseDeviceMotionReturnReactive motion data plus support/permission state