- Service worker + Web Push API for browser/mobile notifications - PWA manifest with icons for home screen install (iOS 16.4+) - Push subscription management (subscribe/unsubscribe API routes) - Notification toggle in Settings > General - Push scheduler script (cron) checks cached events and sends notifications at reminder times, with dedup tracking - Test notification endpoint at /api/push/test - Persists reminders in calendar event cache for scheduler access - New DB models: PushSubscription, SentNotification - New user field: notificationsEnabled Setup: generate VAPID keys with `npx tsx scripts/generate-vapid-keys.ts` and add to .env, then run scheduler via cron every minute. v1.37.0
18 lines
546 B
TypeScript
18 lines
546 B
TypeScript
import type { MetadataRoute } from 'next';
|
|
|
|
export default function manifest(): MetadataRoute.Manifest {
|
|
return {
|
|
name: 'My Weekly To Do List',
|
|
short_name: 'Weekly ToDo',
|
|
description: 'A weekly task management app with calendar integration',
|
|
start_url: '/tasks',
|
|
display: 'standalone',
|
|
background_color: '#ffffff',
|
|
theme_color: '#0ea5e9',
|
|
icons: [
|
|
{ src: '/icons/icon-192.png', sizes: '192x192', type: 'image/png' },
|
|
{ src: '/icons/icon-512.png', sizes: '512x512', type: 'image/png' },
|
|
],
|
|
};
|
|
}
|