TaifoonTAIFOON
TaifoonTAIFOON
TAIFOON PROTOCOL — BUILDERS QUICKSTART

5-Minute Builder Quickstart

Deploy your first cross-chain verification integration. From zero to verifying remote chain state in under 5 minutes.

~3 min
Setup Time
~50
Lines of Code
38
Chains Supported
01

Install Taifoon SDK

Install the Taifoon verification library for your smart contract:

bash
1npm install @taifoon/sdk
2# or
3forge install taifoon-io/taifoon-contracts
02

Import & Deploy Verifier

Import the verifier contract and inherit from it:

solidity
1// SPDX-License-Identifier: MIT
2pragma solidity ^0.8.20;
3
4import "@taifoon/sdk/contracts/src/interfaces/IV5ProofVerifier.sol";
5
6contract MyProtocol is V5ProofVerifier {
7 constructor(address _superRootRegistry)
8 V5ProofVerifier(_superRootRegistry) {}
9
10 function verifyRemoteBalance(
11 uint256 chainId,
12 address account,
13 bytes32[] calldata proof
14 ) external view returns (uint256 balance) {
15 // Verify the proof against SuperRoot
16 require(
17 verifySuperRootProof(chainId, proof),
18 "Invalid proof"
19 );
20
21 // Extract balance from verified proof
22 balance = abi.decode(proof[proof.length - 1], (uint256));
23 }
24}
03

Generate Your First Proof

Request a proof for any on-chain state:

typescript
1import { TaifoonClient } from '@taifoon/sdk';
2
3const client = new TaifoonClient({
4 apiKey: process.env.TAIFOON_API_KEY
5});
6
7// Request proof for a balance on Arbitrum
8const proof = await client.generateProof({
9 chainId: 42161, // Arbitrum
10 account: '0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb',
11 storageSlot: '0x0', // Balance slot
12});
13
14console.log('Proof:', proof);
15// => { proof: ['0x...', '0x...'], superRoot: '0x...' }
04

Verify On-Chain

Call your contract to verify the proof:

typescript
1// Frontend or backend
2const balance = await myProtocol.verifyRemoteBalance(
3 42161, // Arbitrum chain ID
4 '0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb',
5 proof.proof
6);
7
8console.log('Verified balance:', balance);
9// ✅ Cryptographically verified balance from Arbitrum

You're Done!

You've integrated cross-chain verification. Your protocol can now trustlessly verify state from 41 chains without bridges or oracles.