Skip to main content

Account Management

This page covers the full account lifecycle: deactivation, deletion, email verification, and account status.

Each property has its own checkbox marking whether that specific piece is fully implemented and functional end to end (frontend + backend) — update these yourself as work lands; this page won't overwrite them.

  • Account status query
  • Email verification: send / resend / verify — Settings → Email verification shows verified status and resends (resendEmailVerification); an emailed link to /settings/email-verification?token=… is consumed on mount to verify (verifyEmail)
  • Deactivate account
  • Reactivate account — a "Reactivate account" flow appears on Settings → Account management when the account is deactivated (reactivateAccount, password-confirmed)
  • Request account deletion (30-day grace period) and cancel
  • Delete account immediately — a "Delete permanently now" option on Settings → Account management (deleteAccountImmediately, password-confirmed) that bypasses the 30-day grace period and anonymizes the account in place (GDPR), same as the grace-period finalizer
  • Break mode (pause account temporarily)
  • Auto-reply message during break — the "Take a break" flow now has an optional auto-reply textarea sent in takeBreak's input (autoReplyMessage)
  • Reset notification settings to defaults — "Reset notification settings to defaults" button on the Notifications page (resetNotificationSettings).
  • Reset privacy settings to defaults — resetPrivacySettings is wired end to end: a "Reset to defaults" button on Settings → Account privacy (AccountPrivacyPage.tsx), confirmed via a dialog before it resets the core privacy toggles (not the separate extended-privacy or media-preferences settings, which have no reset mutation of their own).
  • Activity tracking & analytics — Settings → Activity insights surfaces getUserActivityStats (active days, streak, most-active hour, total time) and now also renders getActivityHeatmap as a GitHub-style contribution heatmap of posting activity. The getDeviceStats/getAccountAnalytics JSON queries exist but aren't visualised on this page yet
  • Privacy recommendations — Settings → Privacy checkup (getPrivacyRecommendations + refreshRecommendations)
  • Memorialized accounts — full stack. Users submit a request from Settings → Memorialization request (requestMemorialization), which persists on the deceased user's row (memorializationStatus/memorializationRequestedBy/memorializationProof); admins review the queue at /moderation/memorialization (adminGetMemorializationRequests + adminReviewMemorialization, gated on MODERATE_CONTENT); approved profiles show a "Remembering" banner (PublicProfilePage, isMemorialized/showMemorialBanner). The manager's earlier mocked request flow and snake_case field bugs were fixed to write the real camelCase columns.

See the technical reference for GraphQL schemas, routes, source file links, and per-field wiring status.