Admin Dashboard & Developer Console Navigation
Admin Dashboard & Developer Console Navigation
This document outlines the navigation structure and component hierarchy for the Plings Admin Dashboard and Developer Console interfaces.
Navigation Architecture
Access Control
- Plings Admin Dashboard (
/plings-admin) - Requiresplings_adminorsystem_ownerrole - Developer Console (
/dev) - Requiresplings_developerorsystem_ownerrole - Super Admin Console (
/super) - Requiressystem_ownerrole only
π§ Plings Admin Dashboard (/plings-admin)
Primary Component: AdminDashboard.tsx
Target Users: Plings business operations administrators
Purpose: Global business operations management across all organizations
Navigation Structure
/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
Navigation Structure
/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
Navigation Structure
/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>
Navigation Components
// 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.