upgrading-expo
Structured guidance for upgrading Expo SDK versions and resolving dependency conflicts.
- Provides step-by-step upgrade process including diagnostics, cache clearing, and prebuild workflows for native changes
- Covers breaking changes across SDK 53–55, including React 19 migration, New Architecture defaults, React Compiler setup, and native module updates (tabs, audio, video)
- Includes deprecation map for packages like expo-av, expo-permissions, and AsyncStorage with replacement recommendations
- Offers housekeeping checklist: removing implicit dependencies, cleaning config files, reviewing exclusions and patches, and Metro configuration cleanup
References
- ./references/react-19.md -- SDK +54: React 19 changes (useContext → use, Context.Provider → Context, forwardRef removal)
- ./references/new-architecture.md -- SDK +53: New Architecture migration guide
- ./references/react-compiler.md -- SDK +54: React Compiler setup and migration guide
- ./references/native-tabs.md -- SDK +55: Native tabs changes (Icon/Label/Badge now accessed via NativeTabs.Trigger.*)
- ./references/expo-av-to-audio.md -- SDK +55: Migrate audio playback and recording from expo-av to expo-audio
- ./references/expo-av-to-video.md -- SDK +55: Migrate video playback from expo-av to expo-video
- ./references/react-navigation-to-expo-router.md -- SDK +56: Migrate
@react-navigation/*imports toexpo-routerentry points (codemod + manual mapping)
Beta/Preview Releases
Beta versions use .preview suffix (e.g., 55.0.0-preview.2), published under @next tag.
Check if latest is beta: https://exp.host/--/api/v2/versions (look for -preview in expoVersion)
npx expo install expo@next --fix # install beta
More from expo/skills
building-native-ui
Complete guide for building beautiful apps with Expo Router. Covers fundamentals, styling, components, navigation, animations, patterns, and native tabs.
38.7Knative-data-fetching
Use when implementing or debugging ANY network request, API call, or data fetching. Covers fetch API, React Query, SWR, error handling, caching, offline support, and Expo Router data loaders (`useLoaderData`).
30.6Kexpo-tailwind-setup
Set up Tailwind CSS v4 in Expo with react-native-css and NativeWind v5 for universal styling
26.9Kexpo-cicd-workflows
Helps understand and write EAS workflow YAML files for Expo projects. Use this skill when the user asks about CI/CD or workflows in an Expo or EAS context, mentions .eas/workflows/, or wants help with EAS build pipelines or deployment automation.
25.4Kexpo-deployment
Deploying Expo apps to iOS App Store, Android Play Store, web hosting, and API routes
24.9Kexpo-dev-client
Build and distribute Expo development clients locally or via TestFlight
24.8K