From 8cc85ff240a6fd985534636ad1150fb3f4d339ae Mon Sep 17 00:00:00 2001 From: Andrei Date: Fri, 3 Oct 2025 21:11:34 +0000 Subject: [PATCH] docs: Add Push Notification Permission UI task to backlog MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Added task #16: Push Notification Permission UI (5-7 hours total) * Frontend: Permission request component (2-3 hours) * Backend: Firebase FCM integration (3-4 hours) * This is the remaining 5% of PWA features - Renumbered subsequent tasks (17-21) - Updated totals: 21 tasks, 45-70 hours estimated 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- docs/BACKLOG.md | 53 +++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 45 insertions(+), 8 deletions(-) diff --git a/docs/BACKLOG.md b/docs/BACKLOG.md index 710e49c..39fde1c 100644 --- a/docs/BACKLOG.md +++ b/docs/BACKLOG.md @@ -336,9 +336,46 @@ interface UserState { --- +### 16. Push Notification Permission UI +**Status**: Not Started +**Estimated Effort**: 2-3 hours (Frontend) + 3-4 hours (Backend) +**Priority**: Low (Post-Launch) +**Related**: PWA Features (95% complete, this is the remaining 5%) + +**Description**: Implement web push notification permission request and backend Firebase FCM integration. + +**Frontend Requirements**: +- [ ] Create PushNotificationPermission component +- [ ] Request notification permission from browser +- [ ] Handle permission states (granted, denied, default) +- [ ] Send FCM token to backend when granted +- [ ] Show permission prompt at appropriate time (not immediately) +- [ ] Store permission state in user preferences + +**Backend Requirements**: +- [ ] Firebase Cloud Messaging (FCM) integration +- [ ] Store FCM tokens per user/device +- [ ] Create notification sending service +- [ ] Add endpoints: POST /notifications/subscribe, DELETE /notifications/unsubscribe +- [ ] Implement notification templates (activity reminders, family updates) +- [ ] Handle token refresh and cleanup + +**Files to Create**: +- Frontend: `components/pwa/PushNotificationPermission.tsx` +- Backend: `src/modules/notifications/fcm.service.ts` +- Backend: `src/modules/notifications/push-notification.service.ts` + +**Implementation Notes**: +- Requires Firebase project setup +- Need VAPID keys for web push +- Test on multiple browsers (Chrome, Firefox, Safari) +- iOS requires PWA installed for push notifications + +--- + ## 📋 Future Features -### 16. Offline Mode Enhancements +### 17. Offline Mode Enhancements **Status**: Basic offline support exists **Estimated Effort**: 6-8 hours **Priority**: Medium @@ -352,7 +389,7 @@ interface UserState { --- -### 17. Voice Input Multi-Language Support +### 18. Voice Input Multi-Language Support **Status**: Works with backend language detection **Estimated Effort**: 2-3 hours **Priority**: Low @@ -365,7 +402,7 @@ interface UserState { --- -### 18. Export/Import Data +### 19. Export/Import Data **Status**: Not Started **Estimated Effort**: 4-6 hours **Priority**: Medium @@ -379,7 +416,7 @@ interface UserState { --- -### 19. Dark Mode +### 20. Dark Mode **Status**: Not Started **Estimated Effort**: 3-4 hours **Priority**: Low @@ -393,7 +430,7 @@ interface UserState { --- -### 20. Push Notifications Localization +### 21. Push Notifications Localization **Status**: Backend supports multi-language **Estimated Effort**: 2-3 hours **Priority**: Medium @@ -408,12 +445,12 @@ interface UserState { ## 📊 Progress Tracking -**Total Tasks**: 20 +**Total Tasks**: 21 **High Priority**: 3 tasks (15%) **Medium Priority**: 3 tasks (15%) -**Low Priority**: 14 tasks (70%) +**Low Priority**: 15 tasks (71%) -**Estimated Total Effort**: 40-60 hours (1-1.5 weeks) +**Estimated Total Effort**: 45-70 hours (1-1.75 weeks) ---