Skip to content
Merged
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
18 changes: 18 additions & 0 deletions harnesses/chain-kpis/cmd/script/registry.go
Original file line number Diff line number Diff line change
Expand Up @@ -98,4 +98,22 @@ var Registry = []Chain{
// asset (Mobula symbol HYPE resolves to the correct market data,
// ~$58 spot / ~$13.9B mcap verified live 2026-07-25).
{Slug: "hyperliquid", DefiLlama: "Hyperliquid L1", Mobula: "HyperEVM", NativeSymbol: "HYPE"},
// Sei EVM (chain 1329). Cosmos SDK L1 with parallel-execution EVM
// layer. DefiLlama tracks it as "Sei" (verified /v2/chains 2026-07-26).
// Mobula left empty until the free-tier blockchains endpoint is
// re-accessible with a key; the KPI page renders fine with just
// DefiLlama fees/TVL/stables. Native SEI serves as gas for both
// the Cosmos and EVM sides.
{Slug: "sei", DefiLlama: "Sei", Mobula: "", NativeSymbol: "SEI"},
// Mode (chain 34443). OP Stack L2 in the Base ecosystem, DeFi + AI
// positioning. DefiLlama slug "Mode" verified.
{Slug: "mode", DefiLlama: "Mode", Mobula: "", NativeSymbol: "ETH"},
// Ronin (chain 2020). Sky Mavis' EVM gaming L1, home of Axie /
// Pixels and a broader gaming stack. DefiLlama slug "Ronin" verified.
// RON native token.
{Slug: "ronin", DefiLlama: "Ronin", Mobula: "", NativeSymbol: "RON"},
// Immutable zkEVM (chain 13371). Polygon CDK zkEVM L2 dedicated to
// Web3 gaming, operated by Immutable. DefiLlama slug "Immutable zkEVM"
// verified — the space is intentional and matches /v2/chains casing.
{Slug: "immutable", DefiLlama: "Immutable zkEVM", Mobula: "", NativeSymbol: "IMX"},
}
11 changes: 8 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,18 +17,23 @@
"check": "pnpm validate && pnpm typecheck && pnpm lint && pnpm test",
"worker": "tsx worker/index.ts"
},
"pnpm": {
"overrides": {
"hono": ">=4.12.32"
}
},
"dependencies": {
"@modelcontextprotocol/sdk": "^1.26.0",
"@modelcontextprotocol/sdk": "^1.29.0",
"@react-three/fiber": "^9.6.1",
"@vercel/analytics": "^2.0.1",
"cmdk": "^1.1.1",
"fuse.js": "^7.4.2",
"html-to-image": "^1.11.13",
"ioredis": "^5.11.1",
"js-yaml": "^4.1.1",
"js-yaml": "^4.3.0",
"lucide-react": "^1.11.0",
"mcp-handler": "^1.1.0",
"next": "16.2.6",
"next": "16.2.12",
"react": "19.2.4",
"react-dom": "19.2.4",
"three": "^0.184.0",
Expand Down
1,957 changes: 1,008 additions & 949 deletions pnpm-lock.yaml

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion src/components/hl-cohort-leaderboard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ export function HlCohortLeaderboard({
{filtered.length} of {rows.length} builders
</p>
<input
type="search"
type="search" aria-label="Search builder…"
value={q}
onChange={(e) => setQ(e.target.value)}
placeholder="Search builder…"
Expand Down
2 changes: 1 addition & 1 deletion src/components/hl-hip3-leaderboard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ export function HlHip3Leaderboard({ rows }: { rows: HlHip3Row[] }) {
{filtered.length} of {rows.length} dexes
</p>
<input
type="search"
type="search" aria-label="Search dex…"
value={q}
onChange={(e) => setQ(e.target.value)}
placeholder="Search dex…"
Expand Down
2 changes: 1 addition & 1 deletion src/components/perp-by-asset-table.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ export function PerpByAssetTable({ rows }: { rows: PerpAssetRow[] }) {
{filtered.length} of {rows.length} venues
</p>
<input
type="search"
type="search" aria-label="Search venue..."
value={q}
onChange={(e) => setQ(e.target.value)}
placeholder="Search venue..."
Expand Down
2 changes: 1 addition & 1 deletion src/components/perp-venues-leaderboard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ export function PerpVenuesLeaderboard({ rows }: { rows: PerpVenueRow[] }) {
{filtered.length} of {rows.length} venues
</p>
<input
type="search"
type="search" aria-label="Search venue or chain..."
value={q}
onChange={(e) => setQ(e.target.value)}
placeholder="Search venue or chain..."
Expand Down
2 changes: 1 addition & 1 deletion src/components/pm-data-feeds-leaderboard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ export function PmDataFeedsLeaderboard({ rows }: { rows: PmDataFeedRow[] }) {
{filtered.length} of {rows.length} feeds
</p>
<input
type="search"
type="search" aria-label="Search feed..."
value={q}
onChange={(e) => setQ(e.target.value)}
placeholder="Search feed..."
Expand Down
2 changes: 1 addition & 1 deletion src/components/pm-venues-leaderboard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ export function PmVenuesLeaderboard({ rows }: { rows: PmVenueRow[] }) {
{filtered.length} of {rows.length} venues
</p>
<input
type="search"
type="search" aria-label="Search venue..."
value={q}
onChange={(e) => setQ(e.target.value)}
placeholder="Search venue..."
Expand Down
2 changes: 1 addition & 1 deletion src/components/providers-table.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ export function ProvidersTable({ providers }: { providers: Row[] }) {
className="absolute left-3 text-ink-faint group-focus-within:text-ink-muted pointer-events-none"
/>
<input
type="search"
type="search" aria-label="Search products..."
value={query}
onChange={(e) => setQuery(e.target.value)}
placeholder="Search products..."
Expand Down
2 changes: 1 addition & 1 deletion src/components/rpc-chains-leaderboard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ export function RpcChainsLeaderboard({ rows }: { rows: RpcHubChain[] }) {
regions
</p>
<input
type="search"
type="search" aria-label="Search chain or provider..."
value={q}
onChange={(e) => setQ(e.target.value)}
placeholder="Search chain or provider..."
Expand Down
2 changes: 1 addition & 1 deletion src/components/rpc-providers-pivot.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ export function RpcProvidersPivot({
p50 across {chains.length} chains
</p>
<input
type="search"
type="search" aria-label="Search provider..."
value={q}
onChange={(e) => setQ(e.target.value)}
placeholder="Search provider..."
Expand Down
Loading