# 로컬 개발과 검증
그래프 카드 앱은 Expo와 React Native로 개발하며, 이 소개 및 문서 사이트는 같은 저장소의 `website/`에서 정적 HTML로 빌드합니다.

## 앱 실행
저장소 루트에서 의존성을 설치하고 웹 앱을 실행합니다. 웹 배포 CI에서는 Node.js 24.13.0을 사용합니다.

```sh
npm ci
npm run web
```

iOS 시뮬레이터는 `npm run ios`, Android 에뮬레이터는 `npm run android`로 실행합니다. 앱 변경은 `npm test`, `npm run typecheck`, `npm run lint`로 검증합니다.

## 소개 및 문서 사이트 실행
```sh
node --import tsx website/build.ts
node --import tsx website/verify.ts
python3 -m http.server 8870 --directory website/dist --bind 127.0.0.1
```

브라우저에서 `http://127.0.0.1:8870/ko/`를 엽니다. 검증 명령은 내부 링크와 다운로드 예제, 앱 스키마를 확인합니다. 사이트 출력은 `website/dist`에 생성되며 앱 배포와 별도로 호스팅할 수 있습니다.

## 컬렉션 연동
[카드 프로토콜](/ko/docs/protocol/)에서 데이터 구조를 확인하고 [JSON Schema](/downloads/collection.schema.json)와 [예제 컬렉션](/downloads/collection.json)으로 연동을 시작하세요. [검증과 한도](/ko/docs/protocol/validation/)에는 앱과 서버에서 확인하는 규칙이 정리돼 있습니다.
