Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion apps/web/src/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ export default function App() {
return (
<div className="min-h-screen bg-background text-foreground">
<Header />
<main className="relative z-10 container mx-auto px-6 py-8 space-y-8">
<main className="relative z-10 container mx-auto px-4 sm:px-6 py-8 space-y-8">
<div className="text-center py-6">
<p className="text-sm text-muted-foreground">Automated deal creation & storage performance monitoring</p>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ function ProviderCardDetailedStats({
<div className="flex items-center justify-between gap-2">
<span className="text-sm text-muted-foreground">Service URL</span>
<div className="flex items-center gap-1.5">
<code className="text-xs bg-muted px-2 py-1 rounded font-mono truncate max-w-[160px]">
<code className="text-xs bg-muted px-2 py-1 rounded font-mono truncate max-w-[120px] sm:max-w-[200px]">
{provider.serviceUrl}
</code>
<Button
Expand All @@ -56,50 +56,52 @@ function ProviderCardDetailedStats({

<div className="border-t pt-4">
<h4 className="text-sm font-semibold mb-3">Success Rates</h4>
<div className="bg-muted/30 rounded-lg p-3">
<div className="grid grid-cols-[1.5fr_1fr_1fr_1fr_1fr] gap-2 pb-2 text-xs font-semibold text-muted-foreground border-b mb-1">
<div>Metric</div>
<div className="text-right">All Time</div>
<div className="text-right">Rate</div>
<div className="text-right">7 Days</div>
<div className="text-right">Rate</div>
</div>

<MetricRow
label="Uploads"
allTimeAttempts={allTimeMetrics.totalDeals}
allTimeRate={allTimeMetrics.dealSuccessRate}
weeklyAttempts={weeklyMetrics.totalDeals}
weeklyRate={weeklyMetrics.dealSuccessRate}
/>

<MetricRow
label="SP /piece Retrieval"
allTimeAttempts={allTimeMetrics.totalRetrievals}
allTimeRate={allTimeMetrics.retrievalSuccessRate}
weeklyAttempts={weeklyMetrics.totalRetrievals}
weeklyRate={weeklyMetrics.retrievalSuccessRate}
/>
<div className="bg-muted/30 rounded-lg p-3 overflow-x-auto">
<div className="min-w-[480px]">
<div className="grid grid-cols-[1.5fr_1fr_1fr_1fr_1fr] gap-2 pb-2 text-xs font-semibold text-muted-foreground border-b mb-1">
<div>Metric</div>
<div className="text-right">All Time</div>
<div className="text-right">Rate</div>
<div className="text-right">7 Days</div>
<div className="text-right">Rate</div>
</div>

{allTimeMetrics.totalIpniDeals > 0 && (
<MetricRow
label="IPNI Indexing"
allTimeAttempts={allTimeMetrics.totalIpniDeals}
allTimeRate={allTimeMetrics.ipniSuccessRate}
weeklyAttempts={weeklyMetrics.totalIpniDeals}
weeklyRate={weeklyMetrics.ipniSuccessRate}
label="Uploads"
allTimeAttempts={allTimeMetrics.totalDeals}
allTimeRate={allTimeMetrics.dealSuccessRate}
weeklyAttempts={weeklyMetrics.totalDeals}
weeklyRate={weeklyMetrics.dealSuccessRate}
/>
)}

{allTimeMetrics.totalIpfsRetrievals > 0 && (
<MetricRow
label="IPFS Mainnet Retrieval"
allTimeAttempts={allTimeMetrics.totalIpfsRetrievals}
allTimeRate={allTimeMetrics.ipfsRetrievalSuccessRate}
weeklyAttempts={weeklyMetrics.totalIpfsRetrievals}
weeklyRate={weeklyMetrics.ipfsRetrievalSuccessRate}
label="SP /piece Retrieval"
allTimeAttempts={allTimeMetrics.totalRetrievals}
allTimeRate={allTimeMetrics.retrievalSuccessRate}
weeklyAttempts={weeklyMetrics.totalRetrievals}
weeklyRate={weeklyMetrics.retrievalSuccessRate}
/>
)}

{allTimeMetrics.totalIpniDeals > 0 && (
<MetricRow
label="IPNI Indexing"
allTimeAttempts={allTimeMetrics.totalIpniDeals}
allTimeRate={allTimeMetrics.ipniSuccessRate}
weeklyAttempts={weeklyMetrics.totalIpniDeals}
weeklyRate={weeklyMetrics.ipniSuccessRate}
/>
)}

{allTimeMetrics.totalIpfsRetrievals > 0 && (
<MetricRow
label="IPFS Mainnet Retrieval"
allTimeAttempts={allTimeMetrics.totalIpfsRetrievals}
allTimeRate={allTimeMetrics.ipfsRetrievalSuccessRate}
weeklyAttempts={weeklyMetrics.totalIpfsRetrievals}
weeklyRate={weeklyMetrics.ipfsRetrievalSuccessRate}
/>
)}
</div>
</div>
</div>

Expand Down Expand Up @@ -151,7 +153,7 @@ function ProviderCardDetailedStats({

<div className="border-t pt-4">
<h4 className="text-sm font-semibold mb-3">Avg Throughput (All Time)</h4>
<div className="grid grid-cols-2 gap-3">
<div className="grid grid-cols-1 sm:grid-cols-2 gap-3">
<div className="space-y-1">
<p className="text-xs text-muted-foreground">Upload Ingest</p>
<p className="text-sm font-medium">{formatThroughput(allTimeMetrics.avgIngestThroughputBps ?? 0)}</p>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,11 @@ function ProviderCardHeader({
<>
<div className="flex items-start justify-between gap-3">
<div className="flex-1 min-w-0">
<h3 className="text-lg font-semibold truncate">
<h3 className="text-base sm:text-lg font-semibold truncate">
{provider.name || "Unnamed Provider"} ({provider.providerId || "N/A"})
</h3>
<div className="flex items-center gap-2 mt-2">
<code className="text-xs bg-muted px-2 py-1 rounded font-mono truncate max-w-[220px]">
<code className="text-xs bg-muted px-2 py-1 rounded font-mono truncate max-w-[160px] sm:max-w-[220px]">
{provider.address}
</code>
<Button
Expand Down
Loading