Reference
Web3 developer quick reference & tools hub
Code Pattern Library
Copy-paste code snippets: contract, frontend & backend patterns.
Error Handling Pattern
Unified error catching, retry & fallback
typescript
try {
const result = await contract.call();
return { success: true, data: result };
} catch (error) {
if (isRetryable(error)) {
return retry(contract.call, { maxAttempts: 3 });
}
throw new AppError(ErrorCode.CONTRACT_CALL_FAILED, error);
}Webhook Signature Verification
Verify webhook request authenticity
typescript
function verifyWebhook(payload: string, signature: string): boolean {
const expected = crypto
.createHmac('sha256', secret)
.update(payload)
.digest('hex');
return timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected)
);
}Wallet Connection State
Frontend wallet & account state
typescript
const { address, isConnected, chain } = useAccount();
const { connect, disconnect } = useConnect();
useEffect(() => {
if (isConnected && address) {
syncUserSession(address, chain?.id);
}
}, [isConnected, address, chain?.id]);RPC Client Wrapper
Auto retry & multi-node fallback
typescript
async function withRetry<T>(
fn: () => Promise<T>,
opts = { maxAttempts: 3 }
): Promise<T> {
let last: unknown;
for (let i = 0; i < opts.maxAttempts; i++) {
try {
return await fn();
} catch (e) {
last = e;
if (i < opts.maxAttempts - 1) await delay(1000 * (i + 1));
}
}
throw last;
}