$ account react
React is a JavaScript library for building user interfaces, maintained as a monorepo containing core React, DOM renderer, reconciler, server-side rendering (Fizz), React Server Components (Flight), DevTools, and the experimental React Compiler (Forget). The architecture is highly modular with packages for different concerns: react (core), react-dom (browser), react-reconciler (custom renderers), react-server (SSR), react-server-dom-* (RSC bundler integrations), react-devtools-* (developer tools), and compiler (Babel plugin with Rust crates). Key entry points include react/index.js, react-dom/client.js, react-dom/server.js, react-server-dom-webpack/server.node.js, and compiler/packages/babel-plugin-react-compiler/src/index.ts. Data flows: user-written React components are optionally compiled by the React Compiler to optimize memoization, then rendered by the reconciler which produces fiber trees and commits updates to the DOM or other renderers. Server components are rendered on the server and streamed to the client. DevTools hook into the reconciler to inspect component trees and profiling data. External dependencies include Babel (for compilation), Rollup (for bundling), Jest (for testing), and various browser extension APIs for DevTools. The codebase demonstrates exceptional engineering with clean abstractions, extensive test coverage, and a well-structured monorepo pattern.
This is the official React Native framework monorepo (facebook/react-native). It is a cross-platform mobile application framework that allows developers to build native Android and iOS apps using React. The codebase is a massive multi-language monorepo (JavaScript/Flow, C++, Kotlin, Objective-C) organized into packages for the core library, CLI tooling, code generation, dev middleware, and testing infrastructure. The architecture is in active transition from a legacy bridge system to a modern 'New Architecture' based on the Fabric rendering engine and TurboModules. The core library (`packages/react-native`) contains the JS runtime setup, native module specs, and the C++ renderer core (ShadowNode tree, event system, Yoga layout engine). Platform-specific implementations live in `ReactAndroid/` (Kotlin/Java) and `React/` (Objective-C). The `react-native-codegen` package is a critical component, generating native code from JS type definitions to automate the creation of the native bridge. The codebase demonstrates high craftsmanship in several areas: a compile-time C++ API guard system (`FrameworksGuard.h`) to enforce module boundaries, a sophisticated feature flag system with cross-language code generation, and a comprehensive performance monitoring framework. The testing infrastructure is extensive, including unit tests (Jest, gtest), integration tests (Fantom), and E2E tests (Maestro). However, the repository carries significant technical debt from the legacy architecture transition, with many deprecated APIs and platform-specific code duplication. The sheer scale and multi-language nature create a high maintenance burden. Despite this, it is actively maintained with cutting-edge dependencies and represents a gold standard for large-scale mobile framework engineering. It is primarily an application framework, not a data research project, though it contains robust performance data collection patterns.