Agent skill · software engineering · react-native-community
migrate-to-strict-api
Use when migrating a React Native project to the Strict TypeScript API — the default JavaScript API from React Native 0.87, available as an opt-in preview since 0.80. Handles tsconfig.json setup, dependency updates, rewriting deep imports to root imports, and resolving breaking type changes. Invoke with `/migrate-to-strict-api`.
Why this skill is useful
Adds a detailed migration script for transitioning to the Strict TypeScript API in React Native, which includes specific TypeScript configuration and dependency management steps.
What it needs
Requires @react-native/eslint-plugin, @react-native/typescript-config, eslint installed locally. About 7k tokens when loaded. Last updated 2026-08-05. 25 stars on the source repository.
What this skill does
Migrate to Strict TypeScript API Migrate a React Native project to the Strict TypeScript API — auto-generated TypeScript types, scoped to react-native's root exports. The Strict API is the default from React Native 0.87, and an opt-in preview on 0.80–0.86. This migration affects TypeScript analysis only. Nothing changes in the bundle or at runtime, so it is safe to apply incrementally and there is no shipping risk. Invocation Step-by-step procedure Follow every step below in order. Do not skip steps. 1. Verify prerequisites Read package.json and confirm the react-native version is >= 0.80. If not, stop and tell the user to upgrade first. Record whether the version is >= 0.87 — this decides steps 3 and 5. Confirm tsconfig.json exists. Confirm nodemodules/react-native/typesgenerated/index.d.ts exists. If not, tell the user to run their package manager install first. 2. Update dependencies Some libraries ship raw TypeScript source that is type-checked as part of the user's project — most commonly Jest mock entry points imported from a setup file. Under the Strict API these produce errors located under nodemodules, typically TS2307: Cannot find module 'react-native/Libraries/...', which the user cannot fix in their own code. Confirm skipLibCheck is enabled (@react-native/typescript-config sets it). Do not disable it. Whenever type errors are located under nodemodules/<package> — at any point in this migration — update that package first, checking its releases for a Strict API compatibility fix. Known fixed versions are listed in references/library-compatibility.md. If no fixed release exists, apply a local fix by redirecting the imported subpath to an untyped stub, and tell the user to report the incompatibility to the library: An inline @ts-ignore does not work for this case — the errors are reported inside the library's files, not at the import site. 3. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills react-native-community/migrate-to-strict-api