Reputation: 215
How would you like to eject your app?
Bare: I'd like a bare React Native project. ExpoKit: I'll create or log in with an Expo account to use React Native and the Expo SDK. Cancel: I'll continue with my current project structure.
What is the difference between ExpoKit and Bare?
What are the advantage and disadvantage on choosing this?
Upvotes: 8
Views: 7735
Reputation: 1034
The two ways to use Expo
tools are called the "managed" and "bare" workflows.
Apps are built with the managed workflow using the expo-cli
, the Expo client on your mobile device, and expo
various services: push notifications
, the build service
, and over-the-air (OTA)
updates. Expo tries to manage as much of the complexity of building apps for you as they can.
This is workflow where you use some of the Expo
tools in a vanilla React Native
app. Unlike in the managed workflow where you don't touch the underlying native code directly, in this workflow the developer has complete control, along with the complexity that comes with that.
ExpoKit
is another way to use Expo
tools in a vanilla React Native
app. The problem with ExpoKit
is it is, compared to the "bare workflow", very monolithic — you essentially include the entire runtime from the Expo "managed workflow" in your app, rather than only the pieces of it that you want
Upvotes: 27