Ethereum Development Tutorials, Guides & Insights
Unlock 16+ expert-curated ethereum tutorials, real-world code snippets, and modern dev strategies. From fundamentals to advanced topics, boost your ethereum skills on DeveloperBreeze.
Adblocker Detected
It looks like you're using an adblocker. Our website relies on ads to keep running. Please consider disabling your adblocker to support us and access the content.
Tutorial
Understanding `crypto.randomBytes` and `ethers.randomBytes`: A Comparison
- Use
crypto.randomByteswhen: - You are building Node.js applications without blockchain-specific functionality.
- You want to avoid adding external dependencies.
- Use
ethers.randomByteswhen: - You are developing Ethereum-related applications and already have ethers.js in your project.
- You want the flexibility of generating random bytes with minimal configuration, defaulting to 32 bytes for Ethereum addresses or private keys.
Oct 24, 2024
Read More Tutorial
How to Query ERC-20 Token Balances and Transactions Using Ethers.js and Etherscan API
- Contract Address: Replace
'0xTokenContractAddress'with the address of the ERC-20 token (e.g., USDT, DAI, or any other ERC-20 token). - Wallet Address: Replace
'0xYourEthereumAddress'with the wallet address whose token balance you want to query. - ABI: We are using a minimal ABI with just the
balanceOffunction, which is all that’s required to query the token balance.
Once you’ve added the code, run the script:
Oct 24, 2024
Read More Tutorial
Etherscan vs Infura: Choosing the Right API for Your Blockchain Application
const ethers = require('ethers');
// Replace with your Infura Project ID
const infuraProvider = new ethers.JsonRpcProvider('https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID');
// Replace with your wallet's private key
const privateKey = 'YOUR_PRIVATE_KEY';
// Create a wallet instance and connect it to Infura
const wallet = new ethers.Wallet(privateKey, infuraProvider);
// Replace with the recipient's Ethereum address
const recipientAddress = '0xRecipientEthereumAddress';
// Amount to send (in Ether)
const amountInEther = '0.01';
async function sendTransaction() {
try {
const tx = {
to: recipientAddress,
value: ethers.utils.parseEther(amountInEther),
gasLimit: 21000, // Gas limit for a basic transaction
gasPrice: await infuraProvider.getGasPrice() // Get current gas price from Infura
};
// Send the transaction
const transaction = await wallet.sendTransaction(tx);
console.log('Transaction Hash:', transaction.hash);
// Wait for the transaction to be mined
const receipt = await transaction.wait();
console.log('Transaction Confirmed:', receipt);
} catch (error) {
console.error('Error sending transaction:', error);
}
}
sendTransaction();- API: This script uses Infura’s node access and Ethers.js to send Ether in real-time.
- Use Case: Essential for dApps, wallets, or any application needing to send transactions or interact with the blockchain live.
Oct 24, 2024
Read More Tutorial
Sending Transactions and Interacting with Smart Contracts Using Infura and Ethers.js
const ethers = require('ethers');
// Replace with your Infura Project ID
const infuraProvider = new ethers.JsonRpcProvider('https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID');
// Replace with the ERC-20 contract address (e.g., USDT, DAI, or any token)
const contractAddress = '0xTokenContractAddress';
// Replace with the wallet address to query the balance
const walletAddress = '0xYourWalletAddress';
// ABI of the ERC-20 token (we only need the balanceOf function here)
const abi = [
'function balanceOf(address owner) view returns (uint256)'
];
// Create a contract instance
const contract = new ethers.Contract(contractAddress, abi, infuraProvider);
async function getTokenBalance() {
try {
// Call the balanceOf function
const balance = await contract.balanceOf(walletAddress);
// Convert the balance from wei (for ERC-20 tokens, it could be small denominations)
console.log(`Token Balance: ${balance.toString()}`);
} catch (error) {
console.error('Error fetching token balance:', error);
}
}
// Call the function to query the token balance
getTokenBalance();- Contract Address: Replace
'0xTokenContractAddress'with the ERC-20 token contract’s address (for example, USDT, DAI, etc.). - Wallet Address: Replace
'0xYourWalletAddress'with the wallet address whose balance you want to query. - ABI (Application Binary Interface): The ABI specifies the functions and data structures used in the smart contract. In this case, we’re using a simple
balanceOffunction to query the balance.
Oct 24, 2024
Read More Tutorial
Understanding and Using the Etherscan API to Query Blockchain Data
https://api.etherscan.io/api?module=account&action=txlist&address=0xYourEthereumAddress&startblock=0&endblock=99999999&sort=asc&apikey=YOUR_API_KEY https://api.etherscan.io/api?module=account&action=tokentx&address=0xYourEthereumAddress&startblock=0&endblock=99999999&sort=asc&apikey=YOUR_API_KEYOct 24, 2024
Read More