Cursorist Docs
Platform

Admin Dashboard

Admin capabilities, metrics, and plugin management workflows.

Admin Analysis

Admin Role Overview


Access Control

  • Single Admin Model: Only 1 user has /admin access
  • Full platform control and metrics visibility
  • OSS publishing authority

Admin Dashboard: /admin

Core Capabilities

  1. Platform Metrics

    • Total users count
    • Total teams count
    • Total organizations count
    • Total plugins count
    • Additional engagement metrics
  2. Plugin Management

    • View all organization plugins
    • Approve/reject plugin submissions
    • Publish to OSS
    • Unpublish from OSS
  3. User Oversight

    • View all registered users
    • Monitor user activity
    • Handle reports/issues

OSS Publishing Workflow

Publish Flow

Loading diagram...

Unpublish Flow

Loading diagram...

GitHub Integration

Repository Access

  • Admin authenticates with GitHub API
  • Read/write access to plugins repository
  • Automated commit generation
  • File management (create, update, delete)

API Operations

OperationGitHub API Action
List published pluginsGET /repos/{owner}/{repo}/contents/plugins
Publish pluginPUT /repos/{owner}/{repo}/contents/plugins/{filename}
Unpublish pluginDELETE /repos/{owner}/{repo}/contents/plugins/{filename}

Supabase Functions

Admin Functions Location

supabase/functions/
├── publish-plugin.ts    # Handle OSS publishing
├── unpublish-plugin.ts  # Handle OSS removal
└── admin-metrics.ts     # Aggregate platform stats

publish-plugin.ts

// Pseudo-code structure
export async function publishPlugin(pluginId: string) {
  // 1. Fetch plugin from database
  // 2. Format as JSON with naming convention
  // 3. Push to GitHub via API
  // 4. Update plugin status in database
}

unpublish-plugin.ts

// Pseudo-code structure
export async function unpublishPlugin(pluginId: string) {
  // 1. Get file path from plugin metadata
  // 2. Delete from GitHub via API
  // 3. Update plugin status in database
}

Admin Metrics Dashboard

User Metrics

MetricDescription
Total UsersAll registered users
Active Users (24h)Users with activity in last 24 hours
New Users (7d)New registrations in last 7 days
User Growth RateWeek-over-week growth percentage

Organization Metrics

MetricDescription
Total OrganizationsAll created organizations
Active OrganizationsOrganizations with recent activity
Avg Teams per OrgAverage team count
Largest OrganizationsTop 10 by member count

Team Metrics

MetricDescription
Total TeamsAll created teams
Avg Members per TeamAverage member count
Most Active TeamsBy plugin creation count

Plugin Metrics

MetricDescription
Total PluginsAll created plugins
Published PluginsOSS-published count
Popular PluginsBy install/favorite count
Plugins by StackBreakdown by technology
Plugins by TypeBreakdown by category

Admin UI Components

All components from Shadcn UI:

  • DataTable - For listing plugins, users, orgs
  • Card - Metric display cards
  • Button - Action buttons (publish, unpublish)
  • Dialog - Confirmation modals
  • Badge - Status indicators
  • Tabs - Section navigation

Security Considerations

  1. Admin route protection via middleware
  2. Server-side verification of admin status
  3. Audit logging for all admin actions
  4. Rate limiting on GitHub API calls
  5. Secure storage of GitHub tokens