Back to list
verekia

reactive-polling

by verekia

⚛️ React Three Fiber Game Dev Recipes

17🍴 0📅 Jan 22, 2026

SKILL.md


name: reactive-polling description: Poll for changes to any value and trigger React re-renders when it changes.

Reactive Polling

Poll for changes to any value and trigger React re-renders when it changes.

Technique

Create a useReactive hook that uses useFrame to periodically check a selector function. When the value changes, update React state to trigger a re-render. Throttle with a configurable FPS.

Key Concepts

  • Selector function returns the value to watch
  • Compare with previous value to detect changes
  • Only update state when value actually changes
  • Throttle polling with useFrame's fps option
  • Use sparingly for values that don't change frequently

Usage

const useReactive = <T,>(selector: () => T, fps = 30): T => {
  const [reactiveValue, setReactiveValue] = useState<T>(selector())
  const previousValueRef = useRef(reactiveValue)

  useFrame(
    () => {
      const newValue = selector()
      if (previousValueRef.current !== newValue) {
        previousValueRef.current = newValue
        setReactiveValue(newValue)
      }
    },
    { fps }
  )

  return reactiveValue
}

// Usage
const isAboveZero = useReactive(() => position.y > 0)

This skill is part of verekia's r3f-gamedev.

Score

Total Score

65/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

Reviews

💬

Reviews coming soon