Archived
feat: implement reading pace notifications (US #33)
Backend: - New hermes app with ReadingGroup, GroupMeeting, GroupMembership models - NotificationPreference (per-user: enable/disable, frequency daily/weekly) - PaceNotification model for tracking sent/dismissed notifications - Pace calculation service comparing current progress vs meeting targets - API endpoints: pace status, notification preferences CRUD, reminders, dismiss - Ahead/behind/on_track/completed status determination Frontend: - PaceNotification component for in-app alerts (behind/ahead/on_track statuses) - ReadingPaceBanner — persistent banner in reader view - Notification settings in Settings page (enable/disable, frequency, reminders) - API client module (groupsApi) for all notification endpoints
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
from django.urls import include, path
|
||||
from rest_framework.routers import DefaultRouter
|
||||
|
||||
from apps.groups.views import (
|
||||
GroupMeetingViewSet,
|
||||
ReadingGroupViewSet,
|
||||
dismiss_pace_notification_view,
|
||||
notification_preferences_view,
|
||||
pace_status_view,
|
||||
reminder_view,
|
||||
)
|
||||
|
||||
router = DefaultRouter()
|
||||
router.register(r"groups", ReadingGroupViewSet, basename="reading-group")
|
||||
router.register(r"meetings", GroupMeetingViewSet, basename="group-meeting")
|
||||
|
||||
urlpatterns = [
|
||||
path("", include(router.urls)),
|
||||
path("notifications/preferences/", notification_preferences_view, name="notification-preferences"),
|
||||
path("notifications/pace/", pace_status_view, name="pace-status"),
|
||||
path("notifications/dismiss/", dismiss_pace_notification_view, name="dismiss-pace"),
|
||||
path("notifications/reminders/", reminder_view, name="meeting-reminders"),
|
||||
]
|
||||
Reference in New Issue
Block a user