MuseMVP Docs
Admin

User Management

Entry, permissions, available actions, and key implementation notes for the admin user management page.

The user management page is used to view and manage site users, including search, pagination, role management, and deletion.

API Architecture

Entry

Page route: /app/admin/users

Page Capabilities

  • User list (pagination + search, with billing contract info attached)
  • Create user
  • Edit user profile
  • Set password
  • Ban/unban (supports banReason and a banExpiresIn ban duration)
  • Session management (view active sessions, revoke one or all)
  • Impersonation (paired with a persistent ImpersonationBanner and one-click exit)
  • Assign/remove admin role
  • Delete user

Extension Tips

  • When adding new user dimensions (for example, source channel), update the query layer first, then columns and filters.
  • When adding new admin actions, prefer reusing src/modules/admin-users/hooks/use-user-actions.ts (which wraps the authClient.admin operations), and invalidate the user list query cache after success.
  • Action dialogs live in src/modules/admin-users/components/, including CreateUserDialog, EditUserDialog, BanUserDialog, SetPasswordDialog, and UserSessionsDialog; action entries are all mounted in UserActionsMenu.
  • The user list response attaches billing contract data to each user in src/backend/api/routes/admin/serialize-admin-users.ts; start there when extending list fields.
  • The persistent banner and exit button during impersonation are rendered by src/modules/layout/default/components/ImpersonationBanner.tsx.
  • Upgrade logic depends on product configuration. Before changes, check src/config/index.ts and src/config/saas/pricing-desc-usage.ts.

On this page

Ship your startup everywhere.
In minutes.

Get MuseMVP