ArchiveExpo SnackDiscord and ForumsNewsletter

Glossary of terms

The following page consists of definitions for some of the deprecated terms, technologies and tools.


The term "detach" was previously used in Expo to mean ejecting your app to use ExpoKit.


The term "eject" was popularized by create-react-app, and it is used in Expo to describe leaving the cozy comfort of the standard Expo development environment, where you do not have to deal with build configuration or native code. When you "eject" from Expo, you have two choices:

  • Eject to bare workflow, where you jump between workflows and move into the bare workflow, where you can continue to use Expo APIs but have access and full control over your native Android and iOS projects.
  • Eject to ExpoKit, where you get the native projects along with ExpoKit. This option is deprecated and support for ExpoKit was removed after SDK 38.


ExpoKit is an Objective-C and Java library that allows you to use the Expo SDK and platform and your existing Expo project as part of a larger standard native project — one that you would normally create using Xcode, Android Studio, or react-native init. For more information, see Ejecting to ExpoKit.

Support for ExpoKit ended after SDK 38. Expo modules can implement support for custom native configuration, and projects that need even more custom native code can expose their Android Studio and Xcode projects with npx expo prebuild.

Shell app

Another term we occasionally use for Standalone app.


XDE was a desktop tool with a graphical user interface (GUI) for working with Expo projects. It's been replaced by Expo CLI, which now provides both command line and web interfaces.