Guys, I’ve been grinding. Added a ton of auth/security features, full profile management, interactive maps, task collaboration, and proper role-based dashboards.
What’s new:
Backend:
- 2FA: Full TOTP implementation with speakeasy + QR codes, backup codes, enable/disable/regenerate
- Session Management: Multi-device tracking (browser, OS, IP, location), view all sessions, logout specific devices or all devices, activity tracking
- Profile Management: Change email, change password, delete account (sets accountStatus to DELETED)
- Task Collaboration: Comments system, activity log tracking every field change (who changed what when), notifications for assignments/comments
- Notifications Service: Real-time polling, unread counter, mark read/unread, mark all read, supports task/sprint/approval events
- Dashboard Endpoints: Role-specific (admin sees pending approvals + user stats, coordinators see their sprints + status breakdown, volunteers see assigned tasks)
- Account Status: ACTIVE/SUSPENDED/DELETED enum, blocks login for deleted/suspended accounts
Frontend (huge UI improvements):
- Interactive Maps: LocationSelector with MapLibre GL + reverse geocoding (click map → get address), SprintLocationsMap showing all sprints with markers
- Profile Page: Tabbed interface (profile/email/password/sessions/2fa/delete), 2FA setup with QR code + stepper
- Task Collaboration: TaskComments + TaskActivityLog components showing full audit trail
- NotificationCenter: Bell icon, unread badge, 5s polling, toast notifications
- Dashboard Pages: Custom for each role (admin/coordinator/volunteer) with stats + recent activity
- Auth Flow: SignupStepper, TwoFactorVerify, ProtectedRoute wrapper
Database (8 migrations):
Email verification, password reset, task comments/activities, account status, notifications, volunteer-user relation, two-factor auth
Log in to leave a comment