# its-fine [](https://bundlephobia.com/package/its-fine) [](https://npmjs.com/package/its-fine) [](https://npmjs.com/package/its-fine) [](https://twitter.com/pmndrs) [](https://discord.gg/poimandres)
A collection of escape hatches for React. As such, you can go beyond React's component abstraction; components are self-aware and can tap into the [React Fiber](https://youtu.be/ZCuYPiUIONs) tree. This enables powerful abstractions that can modify or extend React behavior without explicitly taking reconciliation into your own hands. ## Table of Contents - [Components](#components) - [FiberProvider](#fiberprovider) - [Hooks](#hooks) - [useFiber](#useFiber) - [useContainer](#useContainer) - [useNearestChild](#useNearestChild) - [useNearestParent](#useNearestParent) - [useContextMap](#useContextMap) - [useContextBridge](#useContextBridge) - [Utils](#utils) - [traverseFiber](#traverseFiber) ## Components ### FiberProvider A react-internal `Fiber` provider. This component binds React children to the React Fiber tree. Call its-fine hooks within this. > **Note**: pmndrs renderers like react-three-fiber implement this internally to make use of [`useContextBridge`](#usecontextbridge), so you would only need this when using hooks inside of `react-dom` or `react-native`. ```tsx import * as ReactDOM from 'react-dom/client' import { FiberProvider, useFiber } from 'its-fine' function App() { const fiber = useFiber() } ReactDOM.createRoot(document.getElementById('root')!).render(