Настройка окружения и первый проект на Expo

Создаём первый проект самым простым способом — через Expo — и разбираемся, что вообще установилось.

Expo — набор инструментов и сервисов поверх React Native, который убирает сложную нативную настройку: вы пишете JS и сразу запускаете приложение на телефоне без Xcode и Android Studio.

Почему именно Expo

«Голый» React Native требует установить Xcode (для iOS) и Android Studio (для Android), настроить SDK, эмуляторы, переменные окружения — на это легко потратить вечер. Expo берёт эту боль на себя. Для обучения и для большинства реальных проектов это рекомендованный старт, и официальная документация React Native тоже советует начинать с Expo.

Что нужно установить заранее

  • Node.js (LTS-версию) — среда для JavaScript-инструментов.
  • Любой редактор кода (например, VS Code).
  • На телефон — приложение Expo Go из App Store или Google Play.

Проверить, что Node установлен:

node --version
npm --version

Создаём проект

Одна команда создаёт готовый шаблон приложения. npx запускает пакет без глобальной установки.

npx create-expo-app@latest my-app
cd my-app

Команда скачает шаблон и установит зависимости. После этого папка my-app уже содержит работающее приложение.

Запускаем

npx expo start

В терминале появится QR-код. Откройте Expo Go на телефоне, отсканируйте код — и приложение запустится прямо на устройстве. Любое изменение в коде мгновенно отразится на экране (это называется Fast Refresh).

Первое изменение

Откройте главный файл и поменяйте текст. Шаблон уже содержит примерно такой компонент:

import { Text, View } from "react-native";

export default function App() {
  return (
    <View style={{ flex: 1, justifyContent: "center", alignItems: "center" }}>
      <Text>Моё первое приложение!</Text>
    </View>
  );
}

Сохраните файл — текст на телефоне обновится сам, без перезапуска.

Expo vs «голый» React Native

ExpoBare React Native
Не нужны Xcode/Android Studio для стартаНужна полная нативная среда
Запуск через Expo Go по QR-кодуСборка нативного приложения
Готовый набор API устройстваНативные модули подключаете сами

Со временем, если понадобится глубокая нативная кастомизация, можно «выйти» из управляемого режима. Но начинать почти всегда стоит с Expo.

Итог

  • Expo убирает сложную нативную настройку — идеальный старт.
  • Проект создаётся одной командой npx create-expo-app.
  • Запуск — npx expo start и сканирование QR-кода в Expo Go.
Проверьте себя
1. Зачем нужен Expo при старте в React Native?
AОн заменяет JavaScript на свой язык
BОн избавляет от сложной нативной настройки (Xcode/Android Studio) и даёт быстрый запуск
CОн нужен только для публикации в App Store
DОн ускоряет работу самого телефона
2. Какая команда создаёт новый проект на Expo?
Anpm start expo
Bnpx create-expo-app my-app
Cexpo init --web
Dnode new-app
3. Что делает npx expo start?
AПубликует приложение в магазинах
BСобирает финальный APK-файл
CЗапускает dev-сервер и показывает QR-код для запуска в Expo Go
DУдаляет node_modules
Поддержать проект