kintex/mobile/README.md
zio 6c9891c7e2 feat: mobile harness + design v2.1 (84 screens) + PLANNING v3.1 + deliverables + Stitch screens
- Harness: kintex-mobile-dev agent + kintex-mobile-orchestrator skill (WISE mobile ref, Stitch-first design rule, dual app targets B2B/B2C)
- design.md v2.1: full 84-screen inventory (web 51 / admin 10 / public 8 / mobile 15) with Stitch prompts incl. ticketing (SCR-P7/P8, M14/M15)
- PLANNING v3.1: unified account + split signup tracks (2FA required for staff, light signup/guest for visitors), one codebase / two app targets
- Deliverables: dev plan (21s), user/operator/developer guides (17/14/15s), program spec (44s, 65 programs, 8 flowcharts), DA (DB design 14s + table spec xlsx 35 tables/299 cols)
- Benchmark: ticketing-app-benchmark.md (7 apps) -> IMPLEMENTATION_BACKLOG Phase F (14 items)
- Stitch: 23 generated screens saved (mobile 10, admin 6, web core 5, ticket 2)
- mobile/: Expo scaffold (SDK 51, expo-router, secure store JWT)
- frontend: SCR-13~17 QA fixes, icons.tsx, kintexEvents, V10 seed migration
- ci/: KINTEX CI logo assets

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-11 23:31:45 +09:00

2.1 KiB

KINTEX AI 전시관리 — 모바일 앱 (mobile/)

React Native + Expo(expo-router, TypeScript) 모바일 앱. 조회·승인·현장 시나리오 전용 (design.md §4). 백엔드는 공유 API https://kintex.zioinfo.co.kr.

스택

  • Expo SDK 51 · expo-router ~3.5 · React Native 0.74 · TypeScript
  • JWT는 expo-secure-store(네이티브 keychain/keystore)에 저장, 웹은 AsyncStorage 폴백
  • 디자인 토큰: theme/(docs/design.md §1 팔레트·타이포). 신규 토큰 없음.

실행

cd mobile
npm install
npm run typecheck   # tsc --noEmit
npm start           # Expo 개발 서버 (Expo Go / 에뮬레이터)

API 베이스는 app.json > extra.apiBase 또는 EXPO_PUBLIC_API_BASE 환경변수로 재정의. 시크릿(키 등)은 하드코딩하지 않는다.

화면

경로 화면 근거
app/login.tsx 로그인(2FA/OTP·아이디 기억·비번찾기/회원가입) SCR-01
app/register.tsx 회원가입 04_backend_public_auth §1
app/forgot-password.tsx 비밀번호 찾기/초기화 04 §2·§3
app/(tabs)/index.tsx 홈/대시보드(역할별 진입) design §2-2
app/(tabs)/field.tsx 현장 허브(역할 분기)
app/(tabs)/gallery.tsx 시각화 갤러리(워터마크 상시) SCR-12
app/(tabs)/more.tsx 계정·서버 상태·로그아웃
app/checklist.tsx 현장 체크리스트(48px 터치·오프라인·사진) SCR-M1
app/inspection.tsx 현장 검수(승인/반려·AI 플래그) SCR-M2

계약·보안 준수

  • 응답 오류 봉투 { success, data, error } 처리(lib/api.ts), degraded 폴백(isDegraded).
  • AI 생성 이미지는 components/AiImage.tsx가 워터마크 + "AI 생성 예상 이미지" 고지를 항상 표시(제거 불가).
  • 비밀번호는 저장하지 않음. "아이디 기억"은 이메일만 AsyncStorage 보관.

남은 작업

  • 실 화면 데이터 API 배선 확대(부스 목록·검수 요청 제출 — 백엔드 M6/C-4 확장 대기).
  • 앱 아이콘/스플래시 에셋(assets/), i18n, 푸시 알림.
  • EAS 실빌드(eas.json 프로파일) — 본 스캐폴드 범위 밖.