Add contributor leaderboard

Add types, hook, UI components, and integration for leaderboard showing top users with badges
This commit is contained in:
gpt-engineer-app[bot]
2025-11-11 17:51:15 +00:00
parent 947964482f
commit 9b1c2415b0
9 changed files with 761 additions and 4 deletions

View File

@@ -7,6 +7,7 @@ import { DataQualityOverview } from '@/components/admin/database-stats/DataQuali
import { GrowthTrendsChart } from '@/components/admin/database-stats/GrowthTrendsChart';
import { EntityComparisonDashboard } from '@/components/admin/database-stats/EntityComparisonDashboard';
import { DatabaseHealthDashboard } from '@/components/admin/database-stats/DatabaseHealthDashboard';
import { ContributorLeaderboard } from '@/components/contributors/ContributorLeaderboard';
import { useAdminDatabaseStats } from '@/hooks/useAdminDatabaseStats';
import { useRecentAdditions } from '@/hooks/useRecentAdditions';
import { Alert, AlertDescription } from '@/components/ui/alert';
@@ -68,26 +69,30 @@ export default function AdminDatabaseStats() {
</div>
<Tabs defaultValue="overview" className="space-y-6">
<TabsList className="grid w-full grid-cols-5">
<TabsList className="grid w-full grid-cols-6">
<TabsTrigger value="overview" className="flex items-center gap-2">
<Box className="h-4 w-4" />
Overview
</TabsTrigger>
<TabsTrigger value="growth" className="flex items-center gap-2">
<TrendingUp className="h-4 w-4" />
Growth Trends
Growth
</TabsTrigger>
<TabsTrigger value="comparisons" className="flex items-center gap-2">
<BarChart3 className="h-4 w-4" />
Comparisons
</TabsTrigger>
<TabsTrigger value="contributors" className="flex items-center gap-2">
<Users className="h-4 w-4" />
Contributors
</TabsTrigger>
<TabsTrigger value="quality" className="flex items-center gap-2">
<Activity className="h-4 w-4" />
Data Quality
Quality
</TabsTrigger>
<TabsTrigger value="health" className="flex items-center gap-2">
<Shield className="h-4 w-4" />
Health Checks
Health
</TabsTrigger>
</TabsList>
@@ -201,6 +206,11 @@ export default function AdminDatabaseStats() {
<EntityComparisonDashboard />
</TabsContent>
{/* Contributors Tab */}
<TabsContent value="contributors" className="space-y-6">
<ContributorLeaderboard />
</TabsContent>
{/* Data Quality Tab */}
<TabsContent value="quality" className="space-y-6">
<DataQualityOverview />