# React Intersection Observer > React hooks and components for the Intersection Observer API. Scroll animations, lazy loading, impressions, and infinite scroll. ## Docs - [Overview](/overview): React hooks and components that tell you when an element enters or leaves the viewport or a scroll container. ## API - [Core APIs](/api/core-apis): Choose and use the three React APIs for observing elements. - [Observer options](/api/configuration): Decide when observation should trigger, where it should happen, and how long it should run. ## Guides - [Recipes](/guides/recipes): Complete visibility-aware React patterns built with react-intersection-observer. - [SSR and fallbacks](/guides/ssr): Separate server-rendered state, unsupported browsers, hydration, and application fallback policy. - [Observer v2](/guides/intersection-observer-v2): Use trackVisibility only when intersection alone is not enough and you accept narrower browser support. ## Testing - [Testing](/testing): Choose the test layer that matches the behavior you need to prove. - [Browser Mode](/testing/browser-mode): Use Vitest Browser Mode to test real scrolling, layout, focus, and native Intersection Observer behavior. - [Mock intersections](/testing/mocking-intersections): Drive deterministic observer callbacks and thresholds in Vitest, Jest, or another DOM-capable test runner. ## Agent resources - [llms-full.txt](/llms-full.txt): The full Markdown of every page in one file. - [Page Markdown](/index.md): Append `.md` to any page URL to fetch that page as raw Markdown. - [JSON API](/api/docs/pages.json): Page index of the JSON docs API; each entry links the page's JSON and Markdown forms. Described by the OpenAPI document at /openapi.json. - [API catalog](/.well-known/api-catalog): RFC 9727 linkset of the APIs documented here. - [agent-readability.json](/agent-readability.json): Manifest of every agent-facing artifact on this site.