React Native lets you build real native apps for Android and iOS using JavaScript and React. Your code maps to actual native UI components, so apps feel native.
Expo vs Bare
- Expo — easiest start; managed tooling, over-the-air updates, no Xcode/Android Studio needed to begin. Recommended for beginners.
- Bare React Native — full native access; needed for some custom native modules.
Create an app with Expo
npx create-expo-app my-app
cd my-app
npx expo start // scan the QR code with Expo Go on your phone
Your first component
import { Text, View } from 'react-native';
export default function App() {
return (
<View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
<Text>Hello React Native</Text>
</View>
);
}
Tip: Expo Go on your phone gives instant live preview while you code — no build needed.
Summary
React Native builds native apps with JS + React. Start with Expo for the smoothest setup and instant preview.