What problem does it solve?
PermissionKit helps you safely request parental or guardian approval when a child needs to communicate in ways that are governed by communication limits.
Core Features & Use Cases
- Parental approval flow: Create a
PermissionQuestion, present it via AskCenter or PermissionButton, and receive a PermissionResponse with approval or denial.
- Communication-limit awareness: Check whether communication limits are enabled and whether specific handles are known before requesting permission.
- Rich SwiftUI prompts: Build child-friendly permission UI using
PermissionButton, optionally enhanced with person display information like names and avatars.
- Use case: If a child tries to message a contact and the app enforces communication limits, generate a
PermissionQuestion for that contact and actions (e.g., message or audio call) and then enable or restrict communication based on the parent’s decision.
Quick Start
Create a PermissionQuestion<CommunicationTopic> for the child’s communication handle and action, present it using AskCenter.shared.ask(...) (UIKit) or PermissionButton (SwiftUI), and handle the resulting approvals and denials by observing AskCenter.shared.responses(for:).