+ {/* SEO Header structure */} +
+
+

+ + Certificate generation analytics +

+

+ Monitor course completion credentials, analyze award distributions, and audit + verification states. +

+
+
+ +
+
+ + {/* KPI Cards */} + {stats && ( +
+
+
+ + Total Issued + +

+ {stats.totalIssued} +

+ + +100% lifetime authenticity + +
+
+ +
+
+ +
+
+ + Active Credentials + +

+ {stats.totalActive} +

+ Verifiable by 3rd parties +
+
+ +
+
+ +
+
+ + Revoked/Fraudulent + +

+ {stats.totalRevoked} +

+ Soft-deleted from indexing +
+
+ +
+
+
+ )} + + {/* Recharts Visualizations */} + {stats && ( +
+ {/* Completions Trend over Time */} +
+
+

+ + Monthly Completions Trend +

+
+
+ + + + + + + + + + + + + + + +
+
+ + {/* Completions by Course */} +
+
+

+ + Certificate Volume by Course +

+
+
+ + + + + value.length > 15 ? `${value.slice(0, 15)}...` : value + } + /> + + + + + +
+
+
+ )} + + {/* Audit Search List */} +
+
+
+

+ + Certificate Audit Trail +

+

+ Search generated certificates, verify signatures, or soft-revoke invalid + credentials. +

+
+ + {/* Quick Filters */} +
+ {( + [ + { key: 'all', label: 'All' }, + { key: 'active', label: 'Active' }, + { key: 'revoked', label: 'Revoked' }, + ] as const + ).map((filterItem) => ( + + ))} +
+
+ + {/* Search bar */} +
+ + + + setSearchQuery(e.target.value)} + className="block w-full pl-10 pr-3 py-2.5 bg-gray-50 dark:bg-gray-850 border border-gray-200 dark:border-gray-800 rounded-xl text-sm placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-indigo-600 dark:focus:ring-indigo-400 focus:border-transparent transition-all" + /> +
+ + {/* List Table */} +
+ + + + + + + + + + + + {filteredCertificates.length === 0 ? ( + + + + ) : ( + filteredCertificates.map((cert) => { + const isRevoked = !!cert.revokedAt; + return ( + + + + + + + + ); + }) + )} + +
Student / CourseCertificate IDIssued DateStatusActions
+ No certificates match your active search filter. +
+

{cert.name}

+

{cert.courseName}

+
+ {cert.certificateId} + + {new Date(cert.issuedAt).toLocaleDateString()} + + + {isRevoked ? 'Revoked' : 'Active'} + + + + {!isRevoked && ( + + )} +
+
+
+