forked from sagnik/Project_Velocity
Co-authored-by: Sayan Datta <sayan@Sayans-MacBook-Air.local> Reviewed-on: sagnik/Project_Velocity#29
43 lines
2.3 KiB
Markdown
43 lines
2.3 KiB
Markdown
# Velocity iPhone App
|
|
|
|
Dedicated iPhone source tree for the Velocity edge-phone surface.
|
|
|
|
Goals:
|
|
- preserve the visual language of the iPad Velocity app
|
|
- match the production feature scope of `android-edge-phone`
|
|
- use live backend data only
|
|
- register `iphone_edge` surface heartbeats against `/api/mobile-edge/session`
|
|
|
|
Contents:
|
|
- `VelocityIPhoneApp.swift` app entry
|
|
- `EdgeRootView.swift` tab shell
|
|
- `Core/` shared config, networking, state, and styling
|
|
- `Features/` Alerts, Lead Summary, Communications, Notes, Transcriptions, Settings
|
|
|
|
Configuration:
|
|
1. Open `velocity-iphone.xcodeproj` in Xcode.
|
|
2. If you want explicit per-build config values, copy `Config.xcconfig.example` to a local `Config.xcconfig` and attach it to the target build configurations.
|
|
3. Fill in either:
|
|
- `API_BEARER_TOKEN`
|
|
- or `API_EMAIL` and `API_PASSWORD`
|
|
4. Keep `BASE_URL` pointed at the live Velocity backend unless you intentionally override it.
|
|
|
|
Notes:
|
|
- This source tree is intended to supersede the earlier lightweight `velocity-edge-phone` scaffold.
|
|
- The backend routes already exist in `backend/api/routes_mobile_edge.py`; this app consumes them directly.
|
|
|
|
Xcode test flow:
|
|
1. Open `iOS/velocity-iphone/velocity-iphone.xcodeproj`.
|
|
2. Select the `velocity-iphone` scheme and an iPhone simulator such as `iPhone 16 Pro`.
|
|
3. In `Signing & Capabilities`, choose your Apple development team and let Xcode resolve the bundle signing settings.
|
|
4. In `Build Settings`, confirm `Info.plist File` points to `velocity-iphone/Info.plist`.
|
|
5. If you are using live credentials through build settings, set `BASE_URL`, plus either `API_BEARER_TOKEN` or `API_EMAIL` and `API_PASSWORD`.
|
|
6. Press `Cmd+B` to confirm the app builds.
|
|
7. Press `Cmd+R` to launch the simulator.
|
|
8. Verify the bottom-tab shell renders Alerts, Lead Summary, Communications, Notes, Transcriptions, and Settings.
|
|
9. In Settings, confirm the app reports the expected auth mode and live backend base URL.
|
|
10. Trigger a manual refresh or wait for auto-refresh, then verify Alerts and Lead Summary populate from the live backend.
|
|
11. Create a note and confirm it appears without mock fallback behavior.
|
|
12. Open Transcriptions and verify empty states are truthful when no live transcript exists.
|
|
13. Review backend logs or database state to confirm `/api/mobile-edge/session` heartbeats are updating the active `iphone_edge` session window.
|