xref: /expo/docs/pages/bare/overview.mdx (revision dfd28374)
1---
2title: Overview
3hideTOC: true
4description: An overview of bare React Native apps with Expo tools.
5---
6
7import { BoxLink } from '~/ui/components/BoxLink';
8import { Terminal } from '~/ui/components/Snippet';
9import { DEMI, CODE } from '~/ui/components/Text';
10
11A bare React Native app is a project where developers make direct changes to their native **android** and **ios** project directories rather than continuously generating them on demand using [app config](/workflow/configuration/) and [prebuild](/workflow/prebuild). All tools and services offered by Expo including [EAS](/eas), Expo CLI, and the libraries in the Expo SDK, are built around bare React Native apps.
12
13## Prerequisites
14
15Before you get started with a React Native app, make sure you have set up your developer environment from [React Native](https://reactnative.dev/docs/environment-setup).
16
17## Get started
18
19To bootstrap a new React Native project, use `create-expo-app` and run the following command:
20
21<Terminal
22  cmd={['# Create a new bare project', '$ npx create-expo-app --template bare-minimum']}
23  cmdCopy="npx create-expo-app --template bare-minimum"
24/>
25
26> If you have an existing project or want to bootstrap with `npx react-native init`, then you need to [install the `expo` package](/bare/installing-expo-modules) manually.
27
28Navigate into your project directory, and run the following commands to build the app locally for each platform:
29
30<Terminal
31  cmd={[
32    '# Build your native Android project',
33    '$ npx expo run:android',
34    '',
35    '# Build your native iOS project',
36    '$ npx expo run:ios',
37  ]}
38/>
39
40> Learn more about [compiling native apps](/more/expo-cli/#compiling).
41
42## Next steps
43
44<BoxLink
45  title="Install Expo modules"
46  description="If you have already initialized a React Native app without `create-expo-app`, learn how to install the Expo module library."
47  description={
48    <>
49      If you have already initialized a React Native app without <CODE>create-expo-app</CODE>, learn
50      how to install the Expo module library.
51    </>
52  }
53  href="/bare/installing-expo-modules"
54/>
55<BoxLink
56  title="Install libraries"
57  description="Learn how to install and configure native libraries."
58  href="/workflow/using-libraries#installing-a-third-party-library"
59/>
60<BoxLink title="Use Expo SDK" description="Start adding features to your app." href="/versions/" />
61<BoxLink
62  title="Adopt Prebuild"
63  description={
64    <>
65      Automate your native directories using the <DEMI>app.json</DEMI>.
66    </>
67  }
68  href="/guides/adopting-prebuild"
69/>
70<BoxLink
71  title="App distribution"
72  description="Build and submit your app to the app store with a single command."
73  href="/distribution/introduction"
74/>
75