mirror of
https://github.com/MarekWo/mc-webui.git
synced 2026-03-28 17:42:45 +01:00
Implements Progressive Web App notification capabilities: - Service Worker foundation for PWA installability and offline support - Browser notification toggle in side menu with permission management - Local notifications triggered on new messages (channels, DMs, pending) - App Badge API integration showing total unread count on app icon - Smart notification logic (only when app hidden, only for NEW messages) - Graceful degradation for unsupported browsers Technical details: - Service Worker with network-first fetch strategy for dynamic content - Notification permission stored in localStorage (mc_notifications_enabled) - Delta-based notification tracking (prevents spam on page load) - Notification tag prevents duplicate alerts - App badge auto-clears when user returns to app Limitations (documented): - Android may freeze background JS after 5-10 minutes (OS behavior) - Full "wake device" support requires Web Push API (future enhancement) - Works best for active users who check app regularly Files modified: - app/static/js/sw.js (new) - app/templates/base.html - app/static/js/app.js - app/static/js/dm.js - app/static/manifest.json - app/static/css/style.css 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>