Codebase maps / react/react
The React codebase, as a map.
React's GitHub repository holds about 40 packages, a compiler and the DevTools. Here is how they fit together - and the whole repository as a map you can open and explore.
How React is organized
React is the library for web and native user interfaces. These are the parts of its repository, and what each one does.
packages/react
The part you import. It defines components, elements and hooks - the API - but draws nothing on its own.
packages/react-reconciler
The engine. It works out what changed between renders (the "Fiber" reconciler) and tells a renderer what to update. Its own description: "React package for creating custom renderers."
packages/react-dom
The renderer for web pages: it turns what the reconciler decided into changes to the page (the DOM). react-native-renderer does the same for React Native.
packages/scheduler
Decides when work runs, so the page stays responsive while React renders - "a cooperative scheduler for the browser environment".
packages/react-server
Server rendering and Server Components, with a react-server-dom package for each bundler (webpack, Turbopack, Parcel, ESM).
compiler/
React Compiler: it optimizes apps so only the parts that changed re-render, and checks that components and hooks follow the Rules of React.
packages/react-devtools-*
React DevTools - the browser extension and the standalone app - split into a shared core and one package for each place it runs.
Tools around React
eslint-plugin-react-hooks (the Rules of Hooks), react-refresh (Fast Refresh while you edit), react-test-renderer (snapshot tests) and react-is (checks what a value is).
Where to start reading
Open these in the live map - click a file to read it beside the map, and point at it to see what it imports.
packages/react/src/ReactHooks.js- where useState, useEffect and the other hooks are definedpackages/react-reconciler/src/ReactFiberWorkLoop.js- the heart of rendering: the loop that works through updatespackages/react-reconciler/src/ReactFiberBeginWork.js- what happens to each component as React renders itpackages/react-dom/client.js- createRoot - where a React app attaches to a page
Good to know
Is this the official React repository?
Yes: github.com/react/react, where React is developed (it used to be github.com/facebook/react; that address now leads to the same place).
Is the map up to date?
The live map reads the repository when you open it, so it always shows the current code. The picture on this page was made on October 28, 2026.
Can I map my own project like this?
Yes. Paste any public GitHub link, or open a folder on your computer - your own code never leaves your device.