Get Started with React Native
React Native allows developers who know React to create native apps. At the same time, native developers can use React Native to gain parity between native platforms by writing common features once.
We believe that the best way to experience React Native is through a Framework, a toolbox with all the necessary APIs to let you build production ready apps.
You can also use React Native without a Framework, however weβve found that most developers benefit from using a React Native Framework like Expo. Expo provides features like file-based routing, high-quality universal libraries, and the ability to write plugins that modify native code without having to manage native files.
Can I use React Native without a Framework?
Yes. You can use React Native without a Framework. However, if youβre building a new app with React Native, we recommend using a Framework.
In short, youβll be able to spend time writing your app instead of writing an entire Framework yourself in addition to your app.
The React Native community has spent years refining approaches to navigation, accessing native APIs, dealing with native dependencies, and more. Most apps need these core features. A React Native Framework provides them from the start of your app.
Without a Framework, youβll either have to write your own solutions to implement core features, or youβll have to piece together a collection of pre-existing libraries to create a skeleton of a Framework. This takes real work, both when starting your app, then later when maintaining it.
If your app has unusual constraints that are not served well by a Framework, or you prefer to solve these problems yourself, you can make a React Native app without a Framework using Android Studio, Xcode. If youβre interested in this path, learn how to set up your environment and how to get started without a framework.
Start a new React Native project with Expoβ
Expo is a production-grade React Native Framework. Expo provides developer tooling that makes developing apps easier, such as file-based routing, a standard library of native modules, and much more.
Expo's Framework is free and open source, with an active community on GitHub and Discord. The Expo team works in close collaboration with the React Native team at Meta to bring the latest React Native features to the Expo SDK.
The team at Expo also provides Expo Application Services (EAS), an optional set of services that complements Expo, the Framework, in each step of the development process.
To create a new Expo project, run the following in your terminal:
npx create-expo-app@latest
Once youβve created your app, check out the rest of Expoβs getting started guide to start developing your app.