Reactivity bridge
Your components run on a background thread; the views live on the main thread. Signals bridge the two.
The op queue
Signal updates batch into a compact op stream that @sigx/lynx-runtime-main applies via the Lynx PAPI — no serialization of your component tree, just the deltas.
SharedValue
For values the main thread must read every frame (gestures, animations), use a SharedValue:
import { useSharedValue } from '@sigx/lynx';
const offset = useSharedValue(0);
Motion and Gestures build on this — animation progress is observable from the background thread for free.
