35 lines
1.2 KiB
Markdown
35 lines
1.2 KiB
Markdown
# idp.global Swift App
|
|
|
|
Multiplatform SwiftUI scaffold for the personal `idp.global` companion app on iPhone, iPad, and Mac.
|
|
|
|
## Included in this first pass
|
|
|
|
- QR-based sign-in flow with a live camera scanner and a seeded mock QR payload fallback
|
|
- Mocked approval inbox for accepting or rejecting identity requests
|
|
- Notification center with local notification permission flow and a test notification trigger
|
|
- Shared app state and mock backend boundary so a real API can be connected later
|
|
|
|
## Open the project
|
|
|
|
1. Open [IDPGlobal.xcodeproj](/Users/philkunz/gitea/idp.global-swiftapp/IDPGlobal/IDPGlobal.xcodeproj).
|
|
2. Build the `IDPGlobal` scheme for:
|
|
- `My Mac`
|
|
- an iPad simulator
|
|
- an iPhone simulator
|
|
|
|
## Mock QR payload
|
|
|
|
The app seeds this pairing payload on first launch:
|
|
|
|
`idp.global://pair?token=swiftapp-demo-berlin&origin=code.foss.global&device=Safari%20on%20Berlin%20MBP`
|
|
|
|
You can paste it manually or use the "Use Mock QR" action while the backend is still mocked.
|
|
|
|
## Next integration step
|
|
|
|
Replace `MockIDPService` with a live service that:
|
|
|
|
- exchanges the QR payload for a session token
|
|
- loads approval requests and notifications from the backend
|
|
- posts approval decisions back to `idp.global`
|