foxact
DocsDocsChange LogChange Log (opens in a new tab)
GitHubGitHub (opens in a new tab)
  • Guide
  • Getting Started
  • Best Practice
  • Where is ...?
  • Hooks
  • useAbortableEffect
  • useClipboard
  • useComponentWillReceiveUpdate
  • useCompositionInput
  • useDebouncedState
  • useDebouncedValue
  • useErrorBoundary
  • useFastClick
  • useIntersection
  • useIsClient
  • useIsOnline
  • useIsomorphicLayoutEffect
  • useLocalStorage
  • useMediaQuery
  • usePageVisibility
  • useRetimer
  • useSessionStorage
  • useSingleton
  • useStableHandler
  • useTypeScriptHappyCallback
  • useUncontrolled
  • Components
  • ComposeContextProvider
  • CurrentYear
  • Utilities
  • Context State
  • Create localStorage State
  • Create sessionStorage State
  • createFixedArray
  • fetchJsonp
  • invariant & nullthrow
  • Noop
  • No SSR
  • Rem
  • Request Idle Callback
  • TypeScript Happy Forward Ref
  • isSafari
  • Extensions
  • useNextLink (Next.js App Router)
  • useNextPathname (Next.js Pages Router)
  • useReactRouterEnableConcurrentNavigation (React Router v6)
  • useReactRouterIsMatch (React Router v6)
  • Open in New Tab

On This Page

  • Usage
Question? Give us feedback → (opens in a new tab)Edit this page

usePageVisibility

Exports Size
loading...
Gzip Size
loading...
Brotli Size
Source Code
View on GitHub
Docs
Edit this page

Simple React Hook for checking if the app is in the foreground or background. It uses useSyncExternalStore under the hood to support React 18 concurrent rendering and server-side rendering.

Usage

import { usePageVisibility } from 'foxact/use-page-visibility';
 
usePageVisibility(); // Returns a boolean value
useMediaQueryuseRetimer

MIT License | Made with ♥ by Sukka | © 2023 - 2025