바이브코딩 모바일 앱 기술 스택 추천: React Native와 Expo
아이폰과 안드로이드 앱을 한 코드베이스로 처음 만든다면 TypeScript·React Native·Expo·Expo Router 조합을 추천해요. 두 플랫폼을 함께 개발하고 빌드·배포 과정을 단순화할 수 있지만, 기기 전용 기능이나 고성능 그래픽이 핵심이면 다른 기술도 검토해야 해요.
핵심 요약
- React Native는 아이폰과 안드로이드의 화면과 비즈니스 로직을 한 코드베이스에서 다루게 해줍니다.
- Expo와 Expo Router는 초기 설정부터 화면 이동·빌드·스토어 배포까지 복잡한 과정을 줄여줍니다.
- 기기 전용 기능이나 고성능 그래픽이 핵심이면 네이티브 개발을 포함한 다른 선택지도 검토합니다.
앞 글에서는 바이브코딩으로 모바일 앱을 만들 수 있는지 알아봤습니다.
App Store와 Google Play에 올릴 앱을 만들기로 했다면 이제 어떤 기술을 사용할지 정해야 해요.
처음 만드는 모바일 앱에는 다음 조합을 추천합니다.
TypeScript
+ React Native
+ Expo
+ Expo Router
핵심은 React Native와 Expo입니다.
원래는 아이폰 앱과 안드로이드 앱을 따로 만들어요
아이폰과 안드로이드는 서로 다른 운영체제입니다.
각 운영체제의 전용 기술을 사용하면 아이폰 앱과 안드로이드 앱을 별도의 프로젝트로 만들어야 해요.
아이폰 앱
→ Swift
안드로이드 앱
→ Kotlin
같은 기능이라도 화면과 동작을 두 번 만들고 두 프로젝트를 따로 관리해야 합니다. 바이브코딩 입문자가 처음부터 두 개발 방식을 함께 익히기에는 부담이 커요.
React Native로 두 앱을 함께 만들어요
React Native는 하나의 프로젝트로 아이폰과 안드로이드에서 실행하는 앱을 만들 수 있는 프레임워크입니다.
하나의 React Native 프로젝트
↙ ↘
아이폰 앱 안드로이드 앱
화면과 기능의 많은 부분을 함께 사용하므로 같은 코드를 두 번 만들 필요가 줄어듭니다. TypeScript와 React 방식으로 작성하기 때문에 웹 애플리케이션을 만들어본 사람도 구조를 이해하기 쉬워요.
두 운영체제에서 모든 코드가 똑같이 작동한다는 뜻은 아닙니다. 뒤로 가기, 키보드, 카메라 권한과 알림처럼 운영체제마다 다른 부분은 각각 확인해야 해요.
그래도 처음부터 아이폰용과 안드로이드용 프로젝트를 따로 만드는 것보다 관리할 범위가 훨씬 작습니다.
Expo로 React Native 개발을 단순하게 해요
React Native만 사용해도 앱을 만들 수 있지만, 앱을 실행하고 휴대폰 기능을 연결하며 출시용 파일을 만드는 설정까지 직접 관리해야 합니다.
Expo는 이 과정을 단순하게 해주는 도구를 함께 제공합니다.
프로젝트 시작
실제 휴대폰에서 확인
카메라·사진·위치 기능 연결
아이폰·안드로이드 앱 빌드
스토어 제출
AI가 기능을 만들 때 참고할 자료와 사용 사례도 많습니다. 설정해야 할 범위가 줄고 정해진 방식을 따르기 쉬워 바이브코딩에 잘 맞아요.
React Native와 Expo 중 하나만 고르는 게 아니에요
둘은 경쟁하는 기술이 아닙니다.
React Native
→ 아이폰과 안드로이드 앱의 화면과 동작을 만듦
Expo
→ React Native 앱의 개발·확인·빌드·제출을 도와줌
React Native로 앱을 만들고 Expo의 도구로 개발과 출시 과정을 관리한다고 이해하면 됩니다.
화면 이동에는 Expo Router를 함께 추천합니다. 파일 구조를 기준으로 로그인, 홈, 상세와 설정 같은 화면을 연결할 수 있어 AI가 앱의 전체 구조를 파악하기 쉬워요.
배포도 Expo의 도구로 이어서 진행해요
웹 애플리케이션은 주소에 새 버전을 배포하지만, 모바일 앱은 아이폰용과 안드로이드용 설치 파일을 만든 뒤 각 스토어에 제출해야 합니다.
Expo는 이 과정에 사용하는 EAS Build와 EAS Submit을 제공합니다.
EAS Build
→ 아이폰·안드로이드 앱 파일 만들기
EAS Submit
→ App Store·Google Play에 제출하기
아이폰과 안드로이드의 복잡한 빌드 설정을 처음부터 직접 관리하지 않아도 된다는 점이 큰 장점입니다.
다만 제출하면 바로 출시되는 것은 아닙니다. Apple과 Google 개발자 계정을 준비하고 앱 정보, 화면 이미지와 개인정보 관련 내용을 입력한 뒤 심사를 거쳐야 해요.
처음 화면을 확인할 때는 Expo Go를 사용할 수 있습니다. 실제 출시를 준비할 때는 개발 빌드와 실제 아이폰·안드로이드 기기에서도 확인하세요.
이런 앱이라면 다른 선택도 검토해요
React Native와 Expo는 일반적인 서비스 앱에 잘 맞습니다.
기록 앱
예약 앱
커뮤니티 앱
회원용 콘텐츠 앱
사진과 알림을 사용하는 앱
고성능 3D 게임, 복잡한 영상 편집이나 특정 휴대폰 장치와 깊게 연결하는 앱이라면 아이폰과 안드로이드 전용 기술이 더 적합할 수 있습니다.
AI에게 이렇게 요청하세요
App Store와 Google Play에 올릴 모바일 앱을 만들려고 해.
TypeScript, React Native, Expo와 Expo Router를 사용해줘.
아이폰과 안드로이드에서 최대한 코드를 함께 사용하되
운영체제마다 따로 확인할 부분도 알려줘.
Expo가 지원하는 방식을 우선 사용하고
같은 역할을 하는 도구를 중복해서 추가하지 마.
EAS Build와 EAS Submit으로 출시할 수 있게 구성해줘.
내가 터미널에 명령어를 직접 입력해야 한다고 설명하지 말고
필요한 작업은 대신 진행해줘.
아직 코드를 만들지 말고
필요한 화면과 사용자 흐름부터 정리해줘.
정리
아이폰 앱과 안드로이드 앱을 각각 만들면 같은 기능을 두 번 개발하고 관리해야 합니다.
React Native를 사용하면 하나의 프로젝트에서 두 앱의 코드를 많이 공유할 수 있어요. Expo를 함께 사용하면 휴대폰 기능 연결부터 앱 빌드와 스토어 제출까지 관리하기 쉬워집니다.
TypeScript
+ React Native
+ Expo
+ Expo Router
+ EAS Build · EAS Submit
React Native와 Expo는 휴대폰에서 실행하는 앱을 만드는 기술입니다. 여러 사용자의 데이터를 저장하거나 로그인과 권한을 관리해야 한다면 모바일 앱이 사용할 서버를 따로 만들어야 할 수도 있어요. 서버가 필요한지는 앱의 기능을 정한 뒤 판단하면 됩니다.
바이브코딩으로 처음 모바일 앱을 만든다면 React Native로 두 운영체제용 앱을 함께 만들고, Expo로 개발과 배포 과정을 단순하게 하는 조합을 추천합니다.
인스타그램 @ddukddak.build · 페이스북 뚝딱







