DEV Community

Johnathon roy
Johnathon roy

Posted on

Running expo and raw React-Native together

Hello world! Glad you asked this question, about ejecting your expo app. Well, you might have been asked by your senior developer, or boss or you might have just heard it from someone but don’t exactly have a good acquaintance with it. In this article we’ll try to answer these questions, all of you might be dead curious to know this in the simplest way –

Why do we need to eject an expo app, although it gives us a tonne of features?
Can we use some modules which have native code with expo like pusher, react-native-modal, etc?

how to make expo and react native work together?
Let’s add a secret ingredient called expo-starter-kit to make all of this happen with a breeze.

Overview

Expo-starter-kit is a powerful, minimal configuration scaffolding tool, which provides a basic configuration for ejected apps built with expo, saving the developers from the hassle of manually ejecting apps. expo-starter-kit exposes an easy-to-use scripts’ list for handling builds, running an app in ejected as well as in unejected mode.

Features

Some of the features which make this module a boon for developers is-

Minimal configuration
Blazing fast development
Rich script structure to run the app in ejected or unejected mode, with the help of just one command
Do whatever you want in the Xcode and Android Studio projects
Support for third-party native modules for React Native, non-Expo-specific instructions such as react-native link
distribute your app as an ipa or apk without pain

Why should I eject my expo app?

And the answer is pretty simple. “Ejecting” is the process of setting up your own custom builds for your CRNA app. It can be necessary to do if you have needs that aren’t covered by CRNA or expo. Apps built with React-native are written in javascript, offering a bridge between writing old school platform-specific apps using kotlin, swift, etc. And this is the specialty offered by react-native, which makes it blazing fast and powerful to use.

However, there are some cases where advanced developers need native capabilities outside of what Expo offers out-of-the-box. The most common situation is when a project requires a specific Native Module which is not supported by React Native Core or the Expo SDK.

for more details about Running expo and raw react-native together

Top comments (0)