Files
orca/mobile/package.json
T
Jinwoo-HandOrca 95324c686e feat(mobile): add Expo mobile app with QR pairing and WebSocket RPC transport
Adds the Orca Mobile companion app (Expo SDK 55 / React Native 0.83) with:
- QR code pairing flow: scan orca://pair# URL, validate auth, save host profile
- WebSocket RPC client with auto-reconnect, exponential backoff, streaming support
- Three screens: host list, worktree list, terminal session with live output
- Mock WebSocket server for development without a running Orca desktop instance
- Desktop-side: TLS certificate management, device registry, mobile IPC handlers,
  WebSocket transport layer, and pairing offer encode/decode with Zod validation
- Unit tests for WebSocket transport and pairing codec

Co-authored-by: Orca <help@stably.ai>
2026-04-30 18:03:22 -04:00

45 lines
1.2 KiB
JSON

{
"name": "orca-mobile",
"version": "0.0.1",
"private": true,
"main": "expo-router/entry",
"scripts": {
"start": "expo start",
"android": "expo run:android",
"ios": "expo run:ios",
"lint": "oxlint",
"format": "oxfmt --write .",
"mock-server": "npx tsx scripts/mock-server.ts"
},
"dependencies": {
"@react-native-async-storage/async-storage": "^2.2.0",
"expo": "^55.0.17",
"expo-camera": "^55.0.16",
"expo-constants": "^55.0.15",
"expo-linking": "^55.0.14",
"expo-router": "^55.0.13",
"expo-status-bar": "^55.0.5",
"react": "^19.2.0",
"react-native": "^0.83.6",
"react-native-gesture-handler": "^2.30.1",
"react-native-reanimated": "^4.2.1",
"react-native-safe-area-context": "^5.6.2",
"react-native-screens": "^4.23.0",
"react-native-web": "^0.21.2",
"react-native-worklets": "^0.7.4",
"ws": "^8.18.0",
"zod": "^4.3.6",
"zustand": "^5.0.12"
},
"devDependencies": {
"@types/react": "^19.2.14",
"@types/react-native": "^0.73.0",
"@types/ws": "^8.18.1",
"expo-module-scripts": "^55.0.2",
"oxfmt": "^0.47.0",
"oxlint": "^1.62.0",
"tsx": "^4.19.4",
"typescript": "^5.9.3"
}
}