react-native-dev
React Native 및 Expo 앱 개발
React Native로 모바일 앱을 개발하려면 컴포넌트, 상태 관리, 애니메이션, 배포에 관한 복잡한 선택을 탐색해야 합니다. 이 스킬은 Expo 및 React Native 프로젝트를 위한 검증된 패턴, 권장 라이브러리, 프로덕션 준비 완료 예제를 제공하는 구조화된 개발 가이드를 제공합니다.
스킬 ZIP 다운로드
Claude에서 업로드
설정 → 기능 → 스킬 → 스킬 업로드로 이동
토글을 켜고 사용 시작
테스트해 보기
"react-native-dev" 사용 중입니다. Expo Router를 사용하여 Home, Search, Profile 탭을 가진 탭 네비게이션 레이아웃을 만드세요.
예상 결과:
- expo-router의 Tabs 컴포넌트를 사용한 탭 레이아웃 파일(app/(tabs)/_layout.tsx)
- Ionicons 아이콘이 포함된 세 개의 탭 화면 정의
- 대형 제목 지원 및 스타일링된 헤더가 있는 헤더 구성
- 개별 라우트 파일: app/(tabs)/home.tsx, app/(tabs)/search.tsx, app/(tabs)/profile.tsx
"react-native-dev" 사용 중입니다. 사용자 환경설정에 persist 미들웨어와 함께 Zustand를 사용하는 방법을 보여주세요.
예상 결과:
- create 및 persist 미들웨어를 사용한 Zustand 스토어 정의
- theme, language, notification 설정이 포함된 타입 안전 상태 인터페이스
- 불필요한 리렌더링을 방지하기 위한 컴포넌트의 셀렉터 패턴 사용
- MMKV 또는 AsyncStorage를 사용한 스토리지 백엔드 구성
보안 감사
안전This skill is a documentation-only reference guide for React Native and Expo development. It contains 12 markdown files (SKILL.md plus 11 reference files) with code examples. All 740 static analysis findings are false positives: the scanner misidentified markdown code blocks (triple-backtick fenced examples) as executable code. Patterns flagged include shell commands in installation instructions, relative imports shown as code examples, environment variable usage in documentation, and documentation references to .env files. No executable code exists in this skill.
위험 요인
품질 점수
만들 수 있는 것
새 Expo 프로젝트 시작
개발자가 적절한 프로젝트 구조, 라우팅, 상태 관리, CI/CD 파이프라인을 갖춘 프로덕션 준비 완료 React Native 앱을 스캐폴딩해야 합니다.
복잡한 애니메이션 및 제스처 구현
개발자가 Reanimated 3과 Gesture Handler를 사용하여 부드러운 애니메이션, 제스처 처리, 스크롤 기반 효과를 추가해야 합니다.
앱 성능 최적화 및 릴리스 준비
팀이 앱을 프로파일링하고 스크롤 끊김을 수정하며 번들 크기를 줄이고 EAS 빌드를 구성한 후 App Store 및 Play Store 배포를 위한 CI/CD를 설정해야 합니다.
이 프롬프트를 사용해 보세요
TypeScript를 사용하여 새 Expo 프로젝트를 설정하세요. 탭 레이아웃을 사용한 Expo Router 네비게이션, 목록을 위한 FlashList, 이미지를 위한 expo-image, 상태 관리를 위한 Zustand를 포함하세요. 권장 프로젝트 구조를 보여주세요.
React Hook Form과 Zod 유효성 검사를 사용하여 로그인 폼을 만드세요. 오류 메시지가 포함된 이메일 및 비밀번호 필드, 로딩 상태가 있는 제출 버튼, fetch 래퍼를 사용한 API 통합을 포함하세요.
Reanimated 3을 사용하여 목록 화면과 상세 화면 사이에 공유 요소 전환을 구현하세요. 목록은 메모이제이션된 항목과 함께 FlashList를 사용합니다. 항목을 탭하면 페이드 및 스케일 전환으로 상세 화면으로 애니메이션하세요.
GitHub Actions를 사용하여 EAS Build 및 Submit 파이프라인을 설정하세요. 개발용과 프로덕션용 별도 빌드 프로필, main 브랜치 병합 시 자동 앱 스토어 제출, 다양한 스테이지를 위한 환경 변수 관리를 포함하세요.
모범 사례
- 목록에는 항상 FlatList 대신 FlashList를 사용하고, 더 나은 성능과 캐싱을 위해 RN Image 대신 expo-image를 사용하세요
- Reanimated로 애니메이션할 때는 transform과 opacity 속성만 사용하여 애니메이션이 GPU 컴포지션을 유지하고 레이아웃 재계산을 피하도록 하세요
- 클라이언트 측 환경 변수에는 EXPO_PUBLIC_ 접두사를 사용하고 서버 전용 비밀은 API 라우트에서 접두사 없이 유지하세요
피하기
- 프로덕션 목록 및 이미지 갤러리에서 메모이제이션된 항목 없이 FlatList를 사용하거나 캐싱 없이 RN Image를 사용하기
- 번들 크기를 증가시키는 배럴 파일(index.ts)에서 가져오기 - 항상 소스 모듈에서 직접 가져오기
- process.env.EXPO_OS 대신 Platform.OS를 사용한 플랫폼 검사, React 18에서 React.use 대신 useContext 사용하기