The term "detach" 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 "detach" from Expo, you get the native projects along with ExpoKit
, so you can continue building your project using the Expo APIs but your workflow now is the same as if you were building a React Native application without Expo. Read more in "Detaching to ExpoKit"
Emulator is used to describe software emulators of Android devices on your computers. Typically iOS emulators are referred to as Simulators
The command-line tool for working with Expo. Read more
A synonym for app that usually implies something more single-use and smaller in scope, sometimes artistic and whimsical.
The iOS and Android app that runs Expo apps. When you want to run your app outside of the Expo Client and deploy it to the App and/or Play stores, you can build a Standalone App
The Expo SDK provides access to device/system functionality such as camera, push notification, contacts, file system, and more. Scroll to the SDK API reference in the documentation navigation to see a full list of APIs and to explore them. Read more about the Expo SDK
. Find it on Github
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
. Read more
The operating system used on iPhone, iPad, and Apple TV. Expo currently runs on iOS for iPhone and iPad.
The React Native ecosystem has thousands of libraries. Without a purpose-built tool, it's hard to know what the libraries are, to search through them, to determine the quality, try them out, and filter out the libraries that won't work for your project (some don't work with Expo, some don't work with Android or iOS). Native Directory
is a website that aims to solve this problem, we recommend you use it to find packages to use in your projects.
Traditionally, apps for iOS and Android are updated by submitting an updated binary to the App and Play stores. Over the Air (OTA) updates allow you to push an update to your app without the overhead of submitting a new release to the stores. Read more in "Publishing"
Automates the process of installing, upgrading, configuring, and removing libraries, also known as dependencies, from your project. See npm
We use the word "publish" as a synonym for "deploy". When you publish an app, it becomes available at a persistent URL from the Expo client, or in the case of Standalone apps
, it updates the app over the air
An emulator for iOS devices that you can run on macOS (or in Snack
) to work on your app without having to have a physical device handy.
is an in-browser development environment where you can build Expo experiences
without installing any tools on your phone or computer.
A desktop tool with a graphical user interface (GUI) for working with Expo projects. It mostly the same functionality as the exp CLI tool
but is intended for people who are more comfortable with a GUI.