Difficulty: Advanced
Type: Feature
Summary
Add the foundation for push notifications so users can receive updates about role changes, access grants, and membership status changes.
Current Behaviour
The README roadmap lists push notifications, but the app does not include notification permission handling, token registration, or user notification preferences.
Expected Behaviour
Users should be able to opt in to push notifications, register their device token with a backend endpoint, and manage basic notification categories from settings.
Suggested Implementation
Add Expo Notifications support, permission prompts, token registration, and settings toggles for supported categories. Use a service boundary so backend registration can be mocked until a live endpoint is available.
Files or Areas Likely Affected
app/settings.tsx
src/features/notifications/
src/lib/guildpassClient.ts
app.json
.env.example
README.md
tests/
Acceptance Criteria
Additional Notes
Assumption: backend support may not be ready yet. If so, define the client-side contract and provide a mock adapter.
Difficulty: Advanced
Type: Feature
Summary
Add the foundation for push notifications so users can receive updates about role changes, access grants, and membership status changes.
Current Behaviour
The README roadmap lists push notifications, but the app does not include notification permission handling, token registration, or user notification preferences.
Expected Behaviour
Users should be able to opt in to push notifications, register their device token with a backend endpoint, and manage basic notification categories from settings.
Suggested Implementation
Add Expo Notifications support, permission prompts, token registration, and settings toggles for supported categories. Use a service boundary so backend registration can be mocked until a live endpoint is available.
Files or Areas Likely Affected
app/settings.tsxsrc/features/notifications/src/lib/guildpassClient.tsapp.json.env.exampleREADME.mdtests/Acceptance Criteria
Additional Notes
Assumption: backend support may not be ready yet. If so, define the client-side contract and provide a mock adapter.