feat(mobile): Phase M-1 모바일 프로젝트 기반 + V3 마스터 플랜
- V3 모바일 마스터 플랜 작성 (docs/v3/00-mobile-master-plan.md) 11개 Phase, 5주 로드맵, 전략 결정사항 확정 - 7개 디자인 HTML 레퍼런스 저장 (docs/v3/designs/) - app.json → app.config.ts 전환 + 환경변수 체계 - 5탭 네비게이션 (DASH/HIST/REC FAB/TALK/SET) - metro.config.js monorepo 격리 (root RN 0.84 충돌 해결) - ui-native 테마 디자인 목업 색상 동기화 - SafeArea 적용 (useSafeAreaInsets) - DEV 로그인 우회 (__DEV__ 전용) - Supabase .env 연동 - iOS 시뮬레이터 검증 완료
This commit is contained in:
parent
ffca07d120
commit
211673bc6c
30 changed files with 15010 additions and 525 deletions
64
apps/mobile/app.config.ts
Normal file
64
apps/mobile/app.config.ts
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
// apps/mobile/app.config.ts
|
||||
// Expo 설정 — 환경변수 관리, 플러그인, 권한
|
||||
|
||||
import { type ExpoConfig, type ConfigContext } from 'expo/config'
|
||||
|
||||
export default ({ config }: ConfigContext): ExpoConfig => ({
|
||||
...config,
|
||||
name: 'D3RO Voice',
|
||||
slug: 'd3ro-voice',
|
||||
scheme: 'd3ro-voice',
|
||||
version: '1.0.0',
|
||||
orientation: 'portrait',
|
||||
icon: './assets/icon.png',
|
||||
userInterfaceStyle: 'dark',
|
||||
splash: {
|
||||
image: './assets/splash.png',
|
||||
resizeMode: 'contain',
|
||||
backgroundColor: '#19191b'
|
||||
},
|
||||
ios: {
|
||||
supportsTablet: true,
|
||||
bundleIdentifier: 'com.d3ro.voice',
|
||||
infoPlist: {
|
||||
NSMicrophoneUsageDescription:
|
||||
'D3RO Voice uses the microphone for voice recognition and recording.',
|
||||
UIBackgroundModes: ['audio', 'fetch', 'remote-notification']
|
||||
}
|
||||
},
|
||||
android: {
|
||||
package: 'com.d3ro.voice',
|
||||
permissions: [
|
||||
'RECORD_AUDIO',
|
||||
'FOREGROUND_SERVICE',
|
||||
'FOREGROUND_SERVICE_MICROPHONE',
|
||||
'POST_NOTIFICATIONS'
|
||||
],
|
||||
adaptiveIcon: {
|
||||
foregroundImage: './assets/adaptive-icon.png',
|
||||
backgroundColor: '#19191b'
|
||||
}
|
||||
},
|
||||
plugins: [
|
||||
'expo-router',
|
||||
'expo-secure-store',
|
||||
'expo-av',
|
||||
[
|
||||
'expo-notifications',
|
||||
{
|
||||
icon: './assets/icon.png',
|
||||
color: '#ff5c35'
|
||||
}
|
||||
]
|
||||
],
|
||||
experiments: {
|
||||
typedRoutes: true
|
||||
},
|
||||
extra: {
|
||||
supabaseUrl: process.env.EXPO_PUBLIC_SUPABASE_URL ?? '',
|
||||
supabaseAnonKey: process.env.EXPO_PUBLIC_SUPABASE_ANON_KEY ?? '',
|
||||
eas: {
|
||||
projectId: process.env.EAS_PROJECT_ID ?? ''
|
||||
}
|
||||
}
|
||||
})
|
||||
Loading…
Add table
Add a link
Reference in a new issue