Skip to main content
AI/MLjeremylongshore

quicknode-hello-world

"QuickNode hello world \u2014 blockchain RPC and Web3 infrastructure\

Stars
2,267
Source
jeremylongshore/claude-code-plugins-plus-skills
Updated
2026-05-31
Slug
jeremylongshore--claude-code-plugins-plus-skills--quicknode-hello-world
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/jeremylongshore/claude-code-plugins-plus-skills/HEAD/plugins/saas-packs/quicknode-pack/skills/quicknode-hello-world/SKILL.md -o .claude/skills/quicknode-hello-world.md

Drops the SKILL.md into .claude/skills/quicknode-hello-world.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

QuickNode Hello World

Overview

Make your first blockchain queries: get block number, check ETH balance, read a smart contract.

Prerequisites

  • Completed quicknode-install-auth with endpoint URL

Instructions

Step 1: Get Block Number

import { ethers } from 'ethers';
const provider = new ethers.JsonRpcProvider(process.env.QUICKNODE_ENDPOINT);

const blockNumber = await provider.getBlockNumber();
console.log(`Current block: ${blockNumber}`);

Step 2: Check ETH Balance

const address = '0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045'; // vitalik.eth
const balance = await provider.getBalance(address);
console.log(`Balance: ${ethers.formatEther(balance)} ETH`);

Step 3: Read Smart Contract (ERC-20 Token)

const usdcAddress = '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48';
const abi = ['function balanceOf(address) view returns (uint256)', 'function decimals() view returns (uint8)'];
const usdc = new ethers.Contract(usdcAddress, abi, provider);

const decimals = await usdc.decimals();
const balance = await usdc.balanceOf(address);
console.log(`USDC balance: ${ethers.formatUnits(balance, decimals)}`);

Step 4: Get Transaction Receipt

const txHash = '0xabc...'; // Any transaction hash
const receipt = await provider.getTransactionReceipt(txHash);
console.log(`Status: ${receipt?.status === 1 ? 'Success' : 'Failed'}`);
console.log(`Gas used: ${receipt?.gasUsed.toString()}`);

Output

  • Block number retrieved
  • ETH balance checked
  • ERC-20 contract read
  • Transaction receipt fetched

Error Handling

Error Cause Solution
null receipt TX pending or invalid hash Wait for confirmation or verify hash
call revert exception Wrong ABI or address Verify contract address and ABI
Balance is 0n Address has no ETH Try a known address like vitalik.eth

Resources

Next Steps

Build transaction workflows: quicknode-core-workflow-a