The fiber tree is React's internal data structure that represents the component hierarchy. Each fiber is a unit of work that React processes during rendering using a depth-first work loop.
A fiber is a plain JavaScript object that holds information about a component, its input props, its state, and its output. React maintains a tree of these fiber nodes that mirrors your component tree.
Unlike the old stack-based reconciler, the fiber architecture lets React split rendering work into incremental units. Each fiber is a unit of work that can be paused, resumed, or aborted, enabling features like concurrent rendering and Suspense.
React maintains two fiber trees at any time: the current tree (what is on screen) and the work-in-progress tree (being built during a render). Once rendering completes, React swaps the work-in-progress tree to become the current tree.
Interview framing: define Fiber Tree in one sentence, then explain one concrete runtime behavior and one common pitfall with a short code example.