Files
hanzo.ai/app/(marketing)/blockchain/indexer/view.tsx
zeekay 081caef236 blockchain: the pages' words go through @hanzo/i18n
BlockchainProductLayout draws every field it is handed with t(), and the
fifteen product views mark their copy with phrase() where it is written.
The index and the chain directory wrap their own words; chain names,
code samples and figures stay as they are. The back arrow and the
call-to-action arrows mirror under dir="rtl", and the two disclosure
heads align to the start instead of the left.
2026-10-22 18:13:04 -07:00

102 lines
3.2 KiB
TypeScript

'use client'
import React from "react";
import {
Search,
Database,
Zap,
Code,
Webhook,
BarChart3,
Layers,
Filter,
Globe,
} from "lucide-react";
import { phrase } from "@hanzo/i18n";
import BlockchainProductLayout, { type CodeExample } from "@/components/blockchain/BlockchainProductLayout";
const HanzoIndexer = ({ codeExamples }: { codeExamples: CodeExample[] }) => {
return (
<BlockchainProductLayout
slug="indexer"
name={phrase("Hanzo Indexer")}
tagline={phrase("Query blockchain data with GraphQL")}
description={phrase("Index and query on-chain data at scale. Deploy your own subgraphs and read the result through one GraphQL API.")}
icon={Search}
features={[
{
icon: Code,
title: phrase("GraphQL API"),
description: phrase("Query indexed chain data through GraphQL."),
},
{
icon: Layers,
title: phrase("Custom Subgraphs"),
description: phrase("Deploy your own indexing logic with custom subgraph definitions."),
},
{
icon: Zap,
title: phrase("Real-Time Indexing"),
description: phrase("Data indexed within seconds of on-chain confirmation."),
},
{
icon: Database,
title: phrase("Historical Aggregation"),
description: phrase("Pre-computed aggregations and time-series data for analytics."),
},
{
icon: Globe,
title: phrase("Cross-Chain Unification"),
description: phrase("Unified data model across multiple chains for easy cross-chain queries."),
},
{
icon: Webhook,
title: phrase("Webhooks"),
description: phrase("Push notifications for indexed events to your backend."),
},
{
icon: Filter,
title: phrase("Token & Portfolio APIs"),
description: phrase("Pre-built APIs for token balances, transfers, and portfolio tracking."),
},
{
icon: BarChart3,
title: phrase("Analytics Dashboard"),
description: phrase("Monitor indexing status, query performance, and data freshness."),
},
]}
useCases={[
{
title: phrase("DeFi Dashboards"),
description: phrase("Build trading dashboards with real-time price, volume, and liquidity data from DEXs."),
},
{
title: phrase("NFT Analytics"),
description: phrase("Track NFT sales, floor prices, holder distributions, and collection statistics."),
},
{
title: phrase("Token Explorers"),
description: phrase("Create token explorers with transfer history, holder analytics, and supply metrics."),
},
{
title: phrase("Protocol Monitoring"),
description: phrase("Monitor protocol health, TVL, user activity, and governance participation."),
},
]}
chains={[
"Lux",
"Ethereum",
"Polygon",
"Arbitrum",
"Optimism",
"Base",
"Avalanche",
"BNB Chain",
]}
codeExamples={codeExamples}
/>
);
};
export default HanzoIndexer;