Files
mobile/package.json
T
iamdoubz 6e4bc2b86b app: Expo skeleton and pairing with a PBX
MB3 (PBX spec 13 §5). Expo SDK 58 + Expo Router, with the PBX repo as a
submodule for @selfphoneng/shared types (import type only).

- pair by scanning the QR from My settings → Mobile app, by typing the
  server and code, or from a selfphoneng://pair link (waits for a tap)
- the device token lives in expo-secure-store; a 401 goes back to pairing
- home shows who and which extension the phone is paired as; Sign out
  removes the phone on the server too
- README: Android APK build (and the Windows long-path fix), iPhone
  builds with ios-builder
2026-10-26 17:45:18 -05:00

42 lines
1.1 KiB
JSON

{
"name": "@selfphoneng/mobile",
"version": "0.0.1",
"main": "expo-router/entry",
"dependencies": {
"@selfphoneng/shared": "file:vendor/selfphoneng/packages/shared",
"@tanstack/react-query": "^5.105.0",
"eslint-config-expo": "~58.0.4",
"expo": "~58.0.19",
"expo-camera": "~58.0.12",
"expo-constants": "~58.0.13",
"expo-device": "~58.0.5",
"expo-linking": "~58.0.14",
"expo-router": "~58.0.26",
"expo-secure-store": "~58.0.2",
"expo-status-bar": "~58.0.4",
"react": "19.3.0",
"react-dom": "19.3.0",
"react-native": "0.88.0",
"react-native-safe-area-context": "~5.10.1",
"react-native-screens": "~4.30.0",
"zod": "^4.6.7",
"zustand": "^5.0.16"
},
"devDependencies": {
"@types/react": "~19.3.0",
"eslint": "^9.39.5",
"prettier": "^3.9.10",
"typescript": "~6.0.3"
},
"scripts": {
"start": "expo start",
"android": "expo run:android",
"ios": "expo run:ios",
"typecheck": "tsc --noEmit",
"lint": "expo lint && prettier --check .",
"format": "prettier --write ."
},
"private": true,
"license": "AGPL-3.0-or-later"
}