Başlarken
Hızlı Başlangıç
Birkaç dakikada Ivy zincirinden veri okumaya başla (viem örnekleriyle).
Bu rehber, birkaç dakikada Ivy zincirinden veri okumanı sağlar. Örneklerde viem kullanıyoruz; ethers veya wagmi ile de aynı işlemleri yapabilirsin.
#1. Kurulum
npm install viem
#2. Public client oluştur
Kaia mainnet'e bağlanan bir okuma istemcisi:
import {createPublicClient, http, defineChain} from "viem";
export const kaia = defineChain({
id: 8217,
name: "Kaia",
nativeCurrency: {decimals: 18, name: "Kaia", symbol: "KAIA"},
rpcUrls: {default: {http: ["https://public-en.node.kaia.io"]}},
blockExplorers: {default: {name: "Kaiascan", url: "https://kaiascan.io"}},
});
export const client = createPublicClient({chain: kaia, transport: http()});
#3. Bir cüzdanın Ivy kimliğini oku
Her kullanıcının bir ivyId'si vardır (ERC-721 token id). Cüzdandan ivyId'ye:
const IVY_REGISTRY = "0x43522E0aB410246C014359B7F5c55F7a196dddFc";
const ivyId = await client.readContract({
address: IVY_REGISTRY,
abi: [{
type: "function",
name: "ivyIdOf",
stateMutability: "view",
inputs: [{name: "wallet", type: "address"}],
outputs: [{type: "uint256"}],
}],
functionName: "ivyIdOf",
args: ["0x0000000000000000000000000000000000000000"], // kullanıcı cüzdanı
});
// ivyId === 0n ise bu cüzdanın Ivy hesabı yoktur.
console.log("ivyId:", ivyId);
#4. Profili oku
const profile = await client.readContract({
address: IVY_REGISTRY,
abi: [{
type: "function",
name: "profileOf",
stateMutability: "view",
inputs: [{name: "ivyId", type: "uint256"}],
outputs: [{
type: "tuple",
components: [
{name: "ivyId", type: "uint256"},
{name: "wallet", type: "address"},
{name: "displayName", type: "string"},
{name: "verified", type: "bool"},
{name: "referrerIvyId", type: "uint256"},
{name: "activeUsernameTokenId", type: "uint256"},
{name: "lastUsernameChange", type: "uint256"},
{name: "createdAt", type: "uint256"},
],
}],
}],
functionName: "profileOf",
args: [ivyId],
});
console.log(profile.displayName, profile.verified);
#Sırada
- Kontrat Adresleri — tüm adresler tek tabloda.
- viem ile Entegrasyon — işlem (yazma) gönderme.
- Kimlik & Kullanıcı Adı — kimlik modelinin tamamı.
Takıldığın bir yer mi var?
Teknik destek, entegrasyon ve ortaklık için ekibe ulaş: info@ivy.live