{"library":"framesync","type":"library","category":null,"description":"Framesync is a JavaScript library designed for scheduling functions into a synchronized render loop, primarily to prevent layout thrashing and ensure predictable execution order within a browser frame. It provides discrete steps for `read`, `update`, `preRender`, `render`, and `postRender` operations, allowing developers to organize DOM interactions efficiently. The current stable version is 6.1.2, and as part of the Popmotion ecosystem, it maintains a steady, mature release cadence focusing on stability and performance. Its primary differentiator is the explicit segregation of frame steps, which is crucial for high-performance animations and UI updates, notably used by libraries like Framer Motion to manage complex transform animations independently. Functions scheduled with Framesync receive frame data including `delta` (time since last frame) and `timestamp`.","language":"javascript","status":"active","version":"6.1.2","tags":["javascript","animation","raf","typescript"],"last_verified":"Wed May 27","install":[{"cmd":"npm install framesync","imports":["import sync from 'framesync';","import { cancelSync } from 'framesync';","import type { FrameData } from 'framesync';"]},{"cmd":"yarn add framesync","imports":[]},{"cmd":"pnpm add framesync","imports":[]}],"homepage":"https://popmotion.io/","github":"https://github.com/Popmotion/popmotion","docs":null,"changelog":null,"pypi":null,"npm":"https://www.npmjs.com/package/framesync","openapi_spec":null,"status_page":null,"smithery":null,"compatibility":{"summary":{"python_range":"18–22","success_rate":0,"avg_install_s":null,"avg_import_s":null,"wheel_type":null},"url":"https://checklist.day/v1/registry/framesync/compatibility"}}