~/VibeHandbook
$39

앱 / 모바일

expo.dev

Expo

무엇인가

Expo는 React Native 위에 얹혀 모바일 앱의 빌드, 실행, 출시를 훨씬 쉽게 만들어주는 오픈소스 프레임워크이자 플랫폼입니다. 엄선된 네이티브 모듈 세트, 명령줄 도구, 그리고 Xcode와 Android Studio를 직접 다루지 않고도 앱을 빌드하고 제출할 수 있는 클라우드 서비스(EAS)를 함께 제공합니다. Expo Go 앱을 사용하면 QR 코드를 스캔해 실제 기기에서 프로젝트를 즉시 미리 볼 수 있습니다.

강점

  • 대부분의 네이티브 빌드 마찰을 제거합니다 — 일반적인 경우 Xcode/Gradle을 건드릴 필요가 없습니다.
  • 바로 쓸 수 있는 방대한 네이티브 API 라이브러리(카메라, 알림, 위치 등).
  • EAS Build와 EAS Submit이 클라우드 빌드와 스토어 제출을 처리합니다.
  • 무선 업데이트(OTA)로 전체 스토어 심사 없이 JavaScript 수정을 푸시할 수 있습니다.
  • 파일 기반 라우팅(Expo Router)과 뛰어난 TypeScript 지원.

트레이드오프

  • Expo의 릴리스 주기와 지원되는 네이티브 모듈 세트에 묶입니다.
  • 깊은 수준의 커스텀 네이티브 코드는 "prebuild"와 추가 설정이 필요할 수 있습니다.
  • 앱 크기가 더 커질 수 있고, 일부 고급 네이티브 통합은 별도 작업이 필요합니다.
  • 클라우드 빌드 서비스는 무료 등급에서 사용량 제한이 있습니다.

가장 적합한 경우

Expo는 대부분의 React Native 프로젝트에서 올바른 기본 선택입니다 — 특히 네이티브 빌드 전문가가 되지 않고도 두 스토어에 빠르게 출시하고 싶은 소규모 팀과 1인 개발자에게 그렇습니다.

바이브 코딩 적합성

Expo는 AI 보조 빌드에 탁월합니다: CLI가 한 번의 명령으로 동작하는 앱을 스캐폴딩하고, Expo Go가 기기에서 즉시 미리보기를 제공하며, 내장 API 덕분에 어시스턴트가 깨지기 쉬운 네이티브 코드를 배선할 일이 거의 없습니다. 모델에게 내비게이션에는 Expo Router를, 안전성을 위해 TypeScript를, 그리고 서드파티 네이티브 패키지보다 Expo 자체 모듈(예: expo-camera)을 먼저 사용하라고 요청하세요. 대상 스토어를 명시해 EAS가 올바르게 구성되도록 하세요.

npx create-expo-app@latest my-app
cd my-app
npx expo start          # scan the QR with Expo Go
npx eas build --platform all   # cloud-build for both stores