Admin Dashboard & Developer Console Navigation

This document outlines the navigation structure and component hierarchy for the Plings Admin Dashboard and Developer Console interfaces.

Access Control

  • Plings Admin Dashboard (/plings-admin) - Requires plings_admin or system_owner role
  • Developer Console (/dev) - Requires plings_developer or system_owner role
  • Super Admin Console (/super) - Requires system_owner role only

πŸ”§ Plings Admin Dashboard (/plings-admin)

Primary Component: AdminDashboard.tsx Target Users: Plings business operations administrators Purpose: Global business operations management across all organizations

/plings-admin
β”œβ”€β”€ Dashboard (Overview & KPIs)
β”œβ”€β”€ Class Management
β”‚   β”œβ”€β”€ Object Class Hierarchy
β”‚   β”œβ”€β”€ Create/Edit Classes
β”‚   └── Class Templates
β”œβ”€β”€ Billing Center
β”‚   β”œβ”€β”€ Cross-Org Invoicing
β”‚   β”œβ”€β”€ Payment Processing
β”‚   β”œβ”€β”€ Usage Analytics
β”‚   └── Credit Management
β”œβ”€β”€ Transaction Resolution
β”‚   β”œβ”€β”€ Ownership Disputes
β”‚   β”œβ”€β”€ Sale/Rent Conflicts
β”‚   β”œβ”€β”€ Mediation Tools
β”‚   └── Legal Escalation
β”œβ”€β”€ Wallet Management
β”‚   β”œβ”€β”€ HD Wallet Spaces
β”‚   β”œβ”€β”€ Tag Allocation
β”‚   β”œβ”€β”€ Crypto Integration
β”‚   └── Security Management
β”œβ”€β”€ User Administration
β”‚   β”œβ”€β”€ Cross-Org User Search
β”‚   β”œβ”€β”€ Account Management
β”‚   β”œβ”€β”€ Permission Assignment
β”‚   └── Account Recovery
β”œβ”€β”€ Organization Control
β”‚   β”œβ”€β”€ Org Creation/Suspension
β”‚   β”œβ”€β”€ Org Settings Management
β”‚   β”œβ”€β”€ Compliance Monitoring
β”‚   └── Performance Metrics
β”œβ”€β”€ Audit & Compliance
β”‚   β”œβ”€β”€ Global Audit Logs
β”‚   β”œβ”€β”€ Compliance Reports
β”‚   β”œβ”€β”€ Security Monitoring
β”‚   └── Data Export
β”œβ”€β”€ Content Moderation
β”‚   β”œβ”€β”€ User-Generated Content
β”‚   β”œβ”€β”€ Image/Description Review
β”‚   β”œβ”€β”€ Flagged Content Queue
β”‚   └── Moderation Actions
β”œβ”€β”€ Support Center
β”‚   β”œβ”€β”€ Escalated Tickets
β”‚   β”œβ”€β”€ Customer Communication
β”‚   β”œβ”€β”€ Issue Tracking
β”‚   └── Resolution Workflows
β”œβ”€β”€ Marketplace Control
β”‚   β”œβ”€β”€ Listing Management
β”‚   β”œβ”€β”€ Dispute Resolution
β”‚   β”œβ”€β”€ Vendor Management
β”‚   └── Transaction Monitoring
└── Analytics Dashboard
    β”œβ”€β”€ Business Metrics
    β”œβ”€β”€ Usage Statistics
    β”œβ”€β”€ Financial Reports
    └── Trend Analysis

Key Components

Component Purpose Required Abilities
ClassHierarchyManager.tsx Manage global object class hierarchy ADMIN_CLASS_MANAGEMENT
CrossOrgBillingCenter.tsx Handle multi-org invoicing ADMIN_BILLING_MANAGEMENT
TransactionMediator.tsx Resolve ownership/sales disputes ADMIN_TRANSACTION_RESOLVE
HDWalletManager.tsx Manage cryptocurrency wallets for tags ADMIN_WALLET_MANAGEMENT
GlobalUserAdmin.tsx Cross-organization user management ADMIN_USER_MANAGEMENT
OrganizationController.tsx Create/manage organizations ADMIN_ORG_MANAGEMENT
GlobalAuditViewer.tsx System-wide audit log access ADMIN_AUDIT_ACCESS
ContentModerationQueue.tsx Review flagged content ADMIN_CONTENT_MODERATION
SupportEscalationCenter.tsx Handle customer support ADMIN_SUPPORT_ESCALATION
MarketplaceController.tsx Manage marketplace operations ADMIN_MARKETPLACE_CONTROL
BusinessAnalytics.tsx Analytics and reporting ADMIN_ANALYTICS_ACCESS

πŸ’» Developer Console (/dev)

Primary Component: DeveloperConsole.tsx Target Users: Plings technical developers Purpose: Technical debugging, testing, and system diagnostics

/dev
β”œβ”€β”€ Dashboard (System Status & Quick Actions)
β”œβ”€β”€ Backend Tools
β”‚   β”œβ”€β”€ Environment Switcher
β”‚   β”œβ”€β”€ Connection Testing
β”‚   └── Configuration Editor
β”œβ”€β”€ API Testing
β”‚   β”œβ”€β”€ GraphQL Playground
β”‚   β”œβ”€β”€ Request Builder
β”‚   β”œβ”€β”€ Response Inspector
β”‚   └── Query Performance
β”œβ”€β”€ Debug Panels
β”‚   β”œβ”€β”€ Real-Time State Inspector
β”‚   β”œβ”€β”€ Component Tree Viewer
β”‚   β”œβ”€β”€ Redux/Context State
β”‚   └── Error Boundary Monitor
β”œβ”€β”€ Database Tools
β”‚   β”œβ”€β”€ Schema Explorer
β”‚   β”œβ”€β”€ Query Builder
β”‚   β”œβ”€β”€ Data Inspector
β”‚   └── Migration Status
β”œβ”€β”€ Performance Monitor
β”‚   β”œβ”€β”€ Query Performance
β”‚   β”œβ”€β”€ Bundle Analysis
β”‚   β”œβ”€β”€ Memory Usage
β”‚   └── Load Time Metrics
β”œβ”€β”€ Feature Flags
β”‚   β”œβ”€β”€ Flag Management
β”‚   β”œβ”€β”€ A/B Testing
β”‚   β”œβ”€β”€ Environment Config
β”‚   └── Rollout Control
β”œβ”€β”€ System Diagnostics
β”‚   β”œβ”€β”€ Health Checks
β”‚   β”œβ”€β”€ Service Status
β”‚   β”œβ”€β”€ Error Monitoring
β”‚   └── Alert Management
β”œβ”€β”€ Log Viewer
β”‚   β”œβ”€β”€ Real-Time Logs
β”‚   β”œβ”€β”€ Log Filtering
β”‚   β”œβ”€β”€ Error Aggregation
β”‚   └── Export Tools
└── Deployment Tools
    β”œβ”€β”€ Build Status
    β”œβ”€β”€ Deployment History
    β”œβ”€β”€ Rollback Tools
    └── Environment Sync

Key Components

Component Purpose Required Abilities
BackendSwitcher.tsx Switch between localhost/production DEV_BACKEND_SWITCH
GraphQLPlayground.tsx Interactive API testing DEV_API_TESTING
DebugStateInspector.tsx Real-time application state DEV_DEBUG_PANEL
DatabaseExplorer.tsx Database schema and data inspection DEV_DATABASE_INSPECT
PerformanceProfiler.tsx Performance monitoring tools DEV_PERFORMANCE_MONITOR
FeatureFlagManager.tsx Control feature flags DEV_FEATURE_FLAGS
SystemHealthMonitor.tsx System diagnostics and health DEV_SYSTEM_DIAGNOSTICS
LogStreamViewer.tsx Real-time log viewing DEV_LOG_ACCESS
DeploymentController.tsx Deployment and CI/CD tools DEV_DEPLOYMENT_TOOLS

πŸ›οΈ Super Admin Console (/super)

Primary Component: SuperAdminConsole.tsx Target Users: System owners only (ultimate access) Purpose: Ultimate system control and emergency operations

/super
β”œβ”€β”€ System Overview
β”œβ”€β”€ Emergency Controls
β”œβ”€β”€ Global Configuration
β”œβ”€β”€ Security Center
β”œβ”€β”€ System Maintenance
└── All Admin + Dev Tools

Note: System Owner has access to ALL abilities from both Admin and Developer consoles, plus additional super-admin capabilities.


Implementation Guidelines

Route Protection

// Protected route wrapper
<ProtectedRoute requiredAbility="ADMIN_CLASS_MANAGEMENT">
  <ClassHierarchyManager />
</ProtectedRoute>

// Multiple ability check
<ProtectedRoute requiredAbilities={["DEV_API_TESTING", "DEV_DEBUG_PANEL"]}>
  <DeveloperTools />
</ProtectedRoute>
// Admin dashboard navigation
const AdminNavigation = () => {
  const { canManageClasses, canResolveBilling } = useUserPermissions();
  
  return (
    <NavigationMenu>
      {canManageClasses && <NavItem href="/plings-admin/classes">Classes</NavItem>}
      {canResolveBilling && <NavItem href="/plings-admin/billing">Billing</NavItem>}
    </NavigationMenu>
  );
};

Access Control Integration

// Page-level access control
const AdminDashboard = () => {
  const { hasAdminAccess } = useUserPermissions();
  
  if (!hasAdminAccess) {
    return <AccessDenied />;
  }
  
  return <AdminDashboardContent />;
};

Role-Based UI Customization

// Contextual interface based on role
const DashboardHeader = () => {
  const { isPlingsAdmin, isPlingsDeveloper, isSystemOwner } = useUserPermissions();
  
  return (
    <Header>
      {isPlingsAdmin && <AdminQuickActions />}
      {isPlingsDeveloper && <DevQuickActions />}
      {isSystemOwner && <SuperAdminQuickActions />}
    </Header>
  );
};

Security Considerations

Ability-Based Access

  • All navigation items check specific abilities, not just roles
  • Missing abilities hide navigation items gracefully
  • Backend APIs enforce the same ability checks

Audit Trail

  • All admin actions logged with user identity
  • Developer actions logged for security monitoring
  • Sensitive operations require additional confirmation

Environment Safety

  • Production systems limit developer access
  • Admin actions have confirmation dialogs
  • Emergency controls require multi-factor authentication

Role Separation

  • Admins cannot access developer tools
  • Developers cannot access business admin functions
  • Only System Owner has cross-domain access

This navigation structure ensures clear separation of concerns while providing comprehensive tools for both business operations and technical development.