{"owner":"react","repo":"react-native","hasSkills":true,"hasMcp":false,"mcpConfig":null,"found":["AGENTS.md"],"skills":{"AGENTS.md":"# React Native\n\nA framework for building native applications using React.\n\nThis file provides guidance for coding agents working in this repository.\n\n## Repo structure\n\nReact Native is a monorepo: the `react-native` package, the packages published alongside it, and the apps and tooling used to develop them.\n\n| Path | Contents |\n| --- | --- |\n| `packages/react-native/Libraries` | JavaScript source (Flow) — the legacy location, with code gradually moving to `src/private` |\n| `packages/react-native/src/private` | JavaScript source (Flow) |\n| `packages/react-native/ReactCommon` | Shared C++ — Fabric renderer, TurboModules, JSI, Yoga, `jsinspector-modern` |\n| `packages/react-native/ReactAndroid` | Android runtime (Kotlin, Java, JNI) |\n| `packages/react-native/{React,ReactApple}` | Apple runtime (Objective-C++, Swift) |\n| `packages/rn-tester` | RNTester — test app showcasing each core component and API, plus a `Playground` scratch surface |\n| `packages/*` | Other published packages — Metro config, Codegen, ESLint config, dev-middleware, React Native DevTools frontend |\n| `private/*` | Unpublished — the `helloworld` sample app, the `react-native-fantom` test runner |\n| `scripts/*` | Repository tooling — build, test, release, and CI scripts |\n\nArchitecture notes live in `__docs__` directories beside the code they describe, indexed by [`__docs__/README.md`](__docs__/README.md). Treat them as reference for the subsystem you are working in, not as required reading.\n\n## Common commands\n\nRun these from the repository root:\n\n| Command | Purpose |\n| --- | --- |\n| `yarn test <path>` | Jest unit tests, found in `__tests__` directories |\n| `yarn fantom <path>` | [Fantom](private/react-native-fantom/__docs__/README.md) integration tests, named `*-itest.js` |\n| `yarn lint` | ESLint |\n| `yarn format` | Prettier and clang-format |\n| `yarn flow-check` | Flow |\n| `yarn start`, `yarn android` | Metro, and RNTester on Android. See [RNTester](packages/rn-tester/README.md) for iOS |\n\nNative builds use Gradle on Android, and CocoaPods or Swift Package Manager on iOS. See [Building from source](https://reactnative.dev/contributing/how-to-build-from-source).\n\n## Gotchas\n\n- JavaScript sources are typed with Flow, and the public API is exported from `packages/react-native/index.js`. TypeScript types are generated from those sources, and `packages/react-native/ReactNativeApi.d.ts` is a committed snapshot of that API — run `yarn build-types` to regenerate both whenever the public API changes.\n- The public native API is snapshotted as well: C++ under `scripts/cxx-api` (`yarn cxx-api-build`), and Android in `packages/react-native/ReactAndroid/api/ReactAndroid.api`. CI validates both.\n- Native modules and components are declared by JavaScript specs (`Native*.js`, `*NativeComponent.js`), from which their native counterparts are generated. Do not hand-edit generated code.\n- `CHANGELOG.md` is compiled at release time. Changelog entries belong in the pull request description.\n\n## Contributing guidelines\n\n- Keep each change focused — no unrelated refactors, formatting, or dependency updates.\n- Complete the pull request template — the motivation and the user-visible effect, and a [changelog entry](https://reactnative.dev/contributing/changelogs-in-pull-requests) with its category and type tags.\n- In the test plan, give the exact commands you ran and their results, plus screenshots or a video for user-interface changes.\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for the full process, including how to report bugs.\n"},"files":{"AGENTS.md":"# React Native\n\nA framework for building native applications using React.\n\nThis file provides guidance for coding agents working in this repository.\n\n## Repo structure\n\nReact Native is a monorepo: the `react-native` package, the packages published alongside it, and the apps and tooling used to develop them.\n\n| Path | Contents |\n| --- | --- |\n| `packages/react-native/Libraries` | JavaScript source (Flow) — the legacy location, with code gradually moving to `src/private` |\n| `packages/react-native/src/private` | JavaScript source (Flow) |\n| `packages/react-native/ReactCommon` | Shared C++ — Fabric renderer, TurboModules, JSI, Yoga, `jsinspector-modern` |\n| `packages/react-native/ReactAndroid` | Android runtime (Kotlin, Java, JNI) |\n| `packages/react-native/{React,ReactApple}` | Apple runtime (Objective-C++, Swift) |\n| `packages/rn-tester` | RNTester — test app showcasing each core component and API, plus a `Playground` scratch surface |\n| `packages/*` | Other published packages — Metro config, Codegen, ESLint config, dev-middleware, React Native DevTools frontend |\n| `private/*` | Unpublished — the `helloworld` sample app, the `react-native-fantom` test runner |\n| `scripts/*` | Repository tooling — build, test, release, and CI scripts |\n\nArchitecture notes live in `__docs__` directories beside the code they describe, indexed by [`__docs__/README.md`](__docs__/README.md). Treat them as reference for the subsystem you are working in, not as required reading.\n\n## Common commands\n\nRun these from the repository root:\n\n| Command | Purpose |\n| --- | --- |\n| `yarn test <path>` | Jest unit tests, found in `__tests__` directories |\n| `yarn fantom <path>` | [Fantom](private/react-native-fantom/__docs__/README.md) integration tests, named `*-itest.js` |\n| `yarn lint` | ESLint |\n| `yarn format` | Prettier and clang-format |\n| `yarn flow-check` | Flow |\n| `yarn start`, `yarn android` | Metro, and RNTester on Android. See [RNTester](packages/rn-tester/README.md) for iOS |\n\nNative builds use Gradle on Android, and CocoaPods or Swift Package Manager on iOS. See [Building from source](https://reactnative.dev/contributing/how-to-build-from-source).\n\n## Gotchas\n\n- JavaScript sources are typed with Flow, and the public API is exported from `packages/react-native/index.js`. TypeScript types are generated from those sources, and `packages/react-native/ReactNativeApi.d.ts` is a committed snapshot of that API — run `yarn build-types` to regenerate both whenever the public API changes.\n- The public native API is snapshotted as well: C++ under `scripts/cxx-api` (`yarn cxx-api-build`), and Android in `packages/react-native/ReactAndroid/api/ReactAndroid.api`. CI validates both.\n- Native modules and components are declared by JavaScript specs (`Native*.js`, `*NativeComponent.js`), from which their native counterparts are generated. Do not hand-edit generated code.\n- `CHANGELOG.md` is compiled at release time. Changelog entries belong in the pull request description.\n\n## Contributing guidelines\n\n- Keep each change focused — no unrelated refactors, formatting, or dependency updates.\n- Complete the pull request template — the motivation and the user-visible effect, and a [changelog entry](https://reactnative.dev/contributing/changelogs-in-pull-requests) with its category and type tags.\n- In the test plan, give the exact commands you ran and their results, plus screenshots or a video for user-interface changes.\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for the full process, including how to report bugs.\n"},"items":[{"name":"AGENTS.md","path":"AGENTS.md","title":"AGENTS.md","content":"# React Native\n\nA framework for building native applications using React.\n\nThis file provides guidance for coding agents working in this repository.\n\n## Repo structure\n\nReact Native is a monorepo: the `react-native` package, the packages published alongside it, and the apps and tooling used to develop them.\n\n| Path | Contents |\n| --- | --- |\n| `packages/react-native/Libraries` | JavaScript source (Flow) — the legacy location, with code gradually moving to `src/private` |\n| `packages/react-native/src/private` | JavaScript source (Flow) |\n| `packages/react-native/ReactCommon` | Shared C++ — Fabric renderer, TurboModules, JSI, Yoga, `jsinspector-modern` |\n| `packages/react-native/ReactAndroid` | Android runtime (Kotlin, Java, JNI) |\n| `packages/react-native/{React,ReactApple}` | Apple runtime (Objective-C++, Swift) |\n| `packages/rn-tester` | RNTester — test app showcasing each core component and API, plus a `Playground` scratch surface |\n| `packages/*` | Other published packages — Metro config, Codegen, ESLint config, dev-middleware, React Native DevTools frontend |\n| `private/*` | Unpublished — the `helloworld` sample app, the `react-native-fantom` test runner |\n| `scripts/*` | Repository tooling — build, test, release, and CI scripts |\n\nArchitecture notes live in `__docs__` directories beside the code they describe, indexed by [`__docs__/README.md`](__docs__/README.md). Treat them as reference for the subsystem you are working in, not as required reading.\n\n## Common commands\n\nRun these from the repository root:\n\n| Command | Purpose |\n| --- | --- |\n| `yarn test <path>` | Jest unit tests, found in `__tests__` directories |\n| `yarn fantom <path>` | [Fantom](private/react-native-fantom/__docs__/README.md) integration tests, named `*-itest.js` |\n| `yarn lint` | ESLint |\n| `yarn format` | Prettier and clang-format |\n| `yarn flow-check` | Flow |\n| `yarn start`, `yarn android` | Metro, and RNTester on Android. See [RNTester](packages/rn-tester/README.md) for iOS |\n\nNative builds use Gradle on Android, and CocoaPods or Swift Package Manager on iOS. See [Building from source](https://reactnative.dev/contributing/how-to-build-from-source).\n\n## Gotchas\n\n- JavaScript sources are typed with Flow, and the public API is exported from `packages/react-native/index.js`. TypeScript types are generated from those sources, and `packages/react-native/ReactNativeApi.d.ts` is a committed snapshot of that API — run `yarn build-types` to regenerate both whenever the public API changes.\n- The public native API is snapshotted as well: C++ under `scripts/cxx-api` (`yarn cxx-api-build`), and Android in `packages/react-native/ReactAndroid/api/ReactAndroid.api`. CI validates both.\n- Native modules and components are declared by JavaScript specs (`Native*.js`, `*NativeComponent.js`), from which their native counterparts are generated. Do not hand-edit generated code.\n- `CHANGELOG.md` is compiled at release time. Changelog entries belong in the pull request description.\n\n## Contributing guidelines\n\n- Keep each change focused — no unrelated refactors, formatting, or dependency updates.\n- Complete the pull request template — the motivation and the user-visible effect, and a [changelog entry](https://reactnative.dev/contributing/changelogs-in-pull-requests) with its category and type tags.\n- In the test plan, give the exact commands you ran and their results, plus screenshots or a video for user-interface changes.\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for the full process, including how to report bugs.\n","category":"root","tokens":883}]}