Bartłomiej Klocek
1 min readSep 19, 2021

--

I see this article was written in April 2020 so I'll divide my answer into two parts - regarding state of Expo in 2020 and now.

As of 2020: — This article contains some inconsistencies.

What you mean by Expo is in fact Expo Managed Workflow and not mentioning it is very misleading.

The "choice between Expo and non-Expo" is a common and harmful myth. In fact, you choose between Managed Workflow (the thing you mentioned as Expo in general), and Bare Workflow, where you are building a normal RN app, but you can still use Expo's SDKs - Camera', FileSystem, Location etc.

So the title of this article should be "Building RN Apps - Expo Managed Workflow or not?"

Regarding ejecting: You don't have to refactor anything when you eject, because Expo SDKs are still available. You're just migrating to Bare Workflow, not deleting Expo at all 😑

As of 2021: Many things have changed during last year and Expo evolved significantly. Now Expo Managed Workflow supports custom native code. Thanks to custom development clients and config plugins you can build your own custom Expo Go app (formerly Expo Client) and use any 3rd party library in the managed workflow. Check it out!

P.S. Ejecting is no more painful, it has been reworked heavily and moreover, you can eject more than once.

--

--

Bartłomiej Klocek
Bartłomiej Klocek

Written by Bartłomiej Klocek

Enthusiast of electronics and all kinds of software development — from web apps to embedded systems. Expo open-source contributor at Software Mansion.

Responses (1)