docs: Add Push Notification Permission UI task to backlog
- 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 <noreply@anthropic.com>
This commit is contained in:
@@ -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)
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user