Overview of using Expo with existing React Native apps

Edit this page

Learn how to use Expo tools and services with existing React Native apps.


If you have a React Native app that doesn't use any Expo tools, you might be wondering what Expo can provide for you, why you might want to use Expo tools and services, and how to get started.

All tools and services provided by Expo work great in any React Native app.

You can use EAS to get quickly set up with a professional CI/CD workflow for building, reviewing, deploying, and updating your apps. Expo CLI provides the best command-line experience for working with React Native. The Expo SDK is an extended standard library for React Native. It gives developers high-quality, well-maintained native libraries that use consistent API conventions to make them easier to learn and use.

If you've ever written a native module for React Native, you'll be surprised how much easier it is to build and maintain modules with the idiomatic Swift and Kotlin DSL provided by the Expo Modules API.

There's so much more to explore, and the links below will help you to explore the options available to you.

Next Steps

Install Expo modules

If you have already initialized a React Native app without create-expo-app, learn how to install the Expo module library.

Use Expo SDK

Use one of the many libraries provided by the Expo SDK, an extensive set of libraries that provide access to native APIs.

Write native modules

Use the Expo Modules API to write native modules using Swift and Kotlin.

Use Expo CLI

Learn about the many benefits Expo CLI provides over @react-native-community/cli.

Native project upgrade helper

View file-by-file diffs of all the changes you need to make to your native projects to upgrade them to the next Expo SDK and React Native version.

Adopt Prebuild

Learn how to simplify maintaining your native projects by generating them on demand from configuration.

App distribution

Build and submit your app to the app store with a single command.