Sobre o projeto

react-use é uma coleção de código aberto de Hooks React reutilizáveis, descrita em seu README como um port do projeto libreact. É distribuído como o pacote npm `react-use` e é lançado em domínio público sob a Unlicense. O README organiza os Hooks em vários grupos: - Sensores: Hooks como useBattery, useGeolocation, useHover, useHash, useIdle, useIntersection, useKey/useKeyPress/useKeyboardJs/useKeyPressEvent, useLocation/useSearchParam, useLongPress, useMedia, useMediaDevices, useMotion, useMouse/useMouseHovered, useMouseWheel, useNetworkState, useOrientation, usePageLeave, useScratch, useScroll, useScrolling, useStartTyping, useWindowScroll, useWindowSize, useMeasure/useSize, createBreakpoint, useScrollbarWidth e usePinchZoom. - UI: useAudio, useClickAway, useCss, useDrop/useDropArea, useFullscreen, useSlider, useSpeech, useVibrate e useVideo. - Animações: useRaf, useInterval/useHarmonicIntervalFn, useSpring, useTimeout, useTimeoutFn, useTween e useUpdate. - Efeitos colaterais: useAsync/useAsyncFn/useAsyncRetry, useBeforeUnload, useCookie, useCopyToClipboard, useDebounce, useError, useFavicon, useLocalStorage, useLockBodyScroll, useRafLoop, useSessionStorage, useThrottle/useThrottleFn, useTitle e usePermission. - Ciclos de vida: useEffectOnce, useEvent, useLifecycles, useMountedState/useUnmountPromise, usePromise, useLogger, useMount, useUnmount, useUpdateEffect, useIsomorphicLayoutEffect e os Hooks de comparação de efeitos (useDeepCompareEffect, useShallowCompareEffect, useCustomCompareEffect). - Estado: createMemo, createReducer, createReducerContext/createStateContext, useDefault, useGetSet, useGetSetState, useLatest, usePrevious, usePreviousDistinct, useObservable, useRafState, useSetState, useStateList, useToggle/useBoolean, useCounter/useNumber, useList, useMap, useSet, useQueue, useStateValidator, useStateWithHistory, useMultiStateValidator, useMediatedState, useFirstMountState, useRendersCount, createGlobalState e useMethods. - Diversos: useEnsuredForwardedRef e ensuredForwardRef. Cada Hook é documentado em seu próprio arquivo no diretório docs, e muitas entradas linkam para demonstrações ao vivo hospedadas no site Storybook do projeto ou no CodeSandbox. O README também linka para uma tradução chinesa da documentação e observa que o projeto é apoiado por meio do Open Collective. A instalação é mostrada como `npm i react-use`.