Skip to main content
Version: 1.0

Ethers.js

Ethers.js is a lightweight and flexible JavaScript library designed for interacting with the Ethereum Blockchain and EVM-compatible networks, such as Wireshape. It provides developers with the tools needed to build decentralized applications (dApps) by enabling easy access to blockchain data, smart contract interaction, and wallet management.

Core Capabilities of Ethers.js

Ethers.js offers a wide range of functionalities that support the development of complex blockchain applications, including:

Wallet Management

  • Simplifies the creation and management of EVM wallet addresses, enabling secure transaction signing and message verification.

  • Supports both software and hardware wallets, enhancing security and flexibility in managing digital identities.

Smart Contract Interaction

  • Provides an intuitive interface for deploying and interacting with smart contracts, including support for ABI encoding and decoding.

  • Allows for easy calling of contract methods and listening for events, streamlining dApp integration.

Transaction Crafting and Signing

  • Facilitates the creation, signing, and broadcasting of transactions, with support for custom gas settings and nonce management.

  • Facilitates efficient and secure transaction management within the Ethereum ecosystem and EVM-compatible networks.

Setting Up Ethers.js

Configuring Ethers.js to interact with the Wireshape network involves setting up a provider that connects to the Wireshape Floripa Testnet RPC endpoint:

npm install ethers

or

yarn add ethers

Interacting with the Wireshape Blockchain

Configuring Ethers.js to interact with the Wireshape network involves setting up a provider that connects to the Wireshape Floripa Testnet RPC endpoint:

Wireshape Floripa Testnet RPC URL
// RPC endpoint URL of Wireshape Floripa Testnet network
const rpcURL = "rpc-floripa.wireshape.org";

Ethers.js offers a comprehensive suite of functionalities for developers looking to leverage the capabilities of the Wireshape Blockchain, from transaction management to smart contract interaction.

Example of a Script

Here's a basic example of an Ethers.js script that connects to the Wireshape RPC network and retrieves the balance of a specified wallet address:

const { ethers } = require("ethers");

// Wireshape Floripa Testnet RPC endpoint URL
const rpcURL = "rpc-floripa.wireshape.org";

// Creating a custom provider using the RPC URL
const provider = new ethers.providers.JsonRpcProvider(rpcURL);

// Wallet address you want to check the balance for
const walletAddress = "0x..."; // Replace with your wallet address

// Function to get the wallet balance
async function getBalance() {
try {
// Getting the wallet balance
const balance = await provider.getBalance(walletAddress);

// Converting balance from Wei to Wire
const balanceInWire = ethers.utils.formatEther(balance);

console.log("Wallet balance:", balanceInWire, "WIRE");
} catch (error) {
console.error("An error occurred while fetching the wallet balance:", error);
}
}

// Calling the function to get the wallet balance
getBalance();
note

Make sure to replace '0x...' with the wallet address you want to check the balance.

After running this example script, you will have obtained the balance of a specific wallet address in Wire on the Wireshape Floripa Testnet network. By connecting to the RPC endpoint provided by Wireshape and utilizing the Ethers.js library, the script retrieves the wallet's balance and converts it from Wei to Wire.

info

Check out the units used in EVM-compatible blockchains in the EVM section.