mirror of
https://github.com/hanzo-apps/hanzo.ai.git
synced 2026-10-30 14:58:08 +00:00
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.
101 lines
3.1 KiB
TypeScript
101 lines
3.1 KiB
TypeScript
'use client'
|
|
|
|
import React from "react";
|
|
import {
|
|
Bell,
|
|
Zap,
|
|
Shield,
|
|
Globe,
|
|
RefreshCw,
|
|
Database,
|
|
Clock,
|
|
Settings,
|
|
BarChart3,
|
|
} from "lucide-react";
|
|
import { phrase } from "@hanzo/i18n";
|
|
import BlockchainProductLayout, { type CodeExample } from "@/components/blockchain/BlockchainProductLayout";
|
|
|
|
const HanzoWebhooks = ({ codeExamples }: { codeExamples: CodeExample[] }) => {
|
|
return (
|
|
<BlockchainProductLayout
|
|
slug="webhooks"
|
|
name={phrase("Webhooks")}
|
|
tagline={phrase("Real-time blockchain event notifications")}
|
|
description={phrase("Get instant notifications for on-chain events. Subscribe to transfers, contract events, address activity, and more with reliable webhook delivery.")}
|
|
icon={Bell}
|
|
features={[
|
|
{
|
|
icon: Bell,
|
|
title: phrase("Event Subscriptions"),
|
|
description: phrase("Subscribe to transfers, logs, contract events, and more."),
|
|
},
|
|
{
|
|
icon: Zap,
|
|
title: phrase("Instant Delivery"),
|
|
description: phrase("Sub-second event detection and webhook dispatch."),
|
|
},
|
|
{
|
|
icon: Shield,
|
|
title: phrase("Signed Payloads"),
|
|
description: phrase("HMAC signatures for webhook authenticity verification."),
|
|
},
|
|
{
|
|
icon: RefreshCw,
|
|
title: phrase("Automatic Retries"),
|
|
description: phrase("Failed deliveries retry with exponential backoff."),
|
|
},
|
|
{
|
|
icon: Globe,
|
|
title: phrase("Multi-chain"),
|
|
description: phrase("Monitor events across all supported networks."),
|
|
},
|
|
{
|
|
icon: Settings,
|
|
title: phrase("Filters & Conditions"),
|
|
description: phrase("Fine-grained filtering by address, topic, or value."),
|
|
},
|
|
{
|
|
icon: Database,
|
|
title: phrase("Event History"),
|
|
description: phrase("Query and replay past webhook deliveries."),
|
|
},
|
|
{
|
|
icon: Clock,
|
|
title: phrase("Block Confirmations"),
|
|
description: phrase("Configure confirmation count for finality."),
|
|
},
|
|
{
|
|
icon: BarChart3,
|
|
title: phrase("Delivery Analytics"),
|
|
description: phrase("Monitor success rates and latency metrics."),
|
|
},
|
|
]}
|
|
useCases={[
|
|
{
|
|
title: phrase("Payment Processing"),
|
|
description: phrase("Instant confirmation of crypto deposits and payments."),
|
|
},
|
|
{
|
|
title: phrase("DeFi Monitoring"),
|
|
description: phrase("Track liquidations, swaps, and position changes."),
|
|
},
|
|
{
|
|
title: phrase("NFT Notifications"),
|
|
description: phrase("Alert users on sales, bids, and transfers."),
|
|
},
|
|
{
|
|
title: phrase("Security Alerts"),
|
|
description: phrase("Monitor for suspicious contract interactions."),
|
|
},
|
|
]}
|
|
chains={[
|
|
"Ethereum", "Polygon", "Arbitrum", "Optimism", "Base",
|
|
"BNB Chain", "Avalanche", "zkSync", "Scroll", "Linea",
|
|
]}
|
|
codeExamples={codeExamples}
|
|
/>
|
|
);
|
|
};
|
|
|
|
export default HanzoWebhooks;
|