Skip to main content

Ethers.js JavaScript Library

Introduction​

The ethers.js library provides a set of tools to interact with Ethereum Nodes with JavaScript, similar to web3.js. Darwinia has an Ethereum-like API available that is fully compatible with Ethereum-style JSON RPC invocations. Therefore, developers can leverage this compatibility and use the ethers.js library to interact with a Darwinia node as if they were doing so on Ethereum. You can read more about ethers.js on this blog post.

Setup Ethers.js with Pangolin​

To get started with the ethers.js library, install it using the following command:

npm install ethers

Once done, the simplest setup to start using the library and its methods is the following:

const ethers = require('ethers');

// Variables definition
const privKey = '0xPRIVKEY';

// Define Provider
const provider = new ethers.providers.StaticJsonRpcProvider('RPC_URL', {
chainId: ChainId,
name: 'NETWORK_NAME'
});

// Create Wallet
let wallet = new ethers.Wallet(privKey, provider);

Different methods are available inside provider and wallet. Depending on which network you want to connect to, you can set the RPC_URL to the following values:

- RPC_URL: http://localhost:9933/
- ChainId: 43
- NETWORK_NAME: development

Tutorials​

If you are interested in a more detailed step-by-step guide, you can go to our specific tutorials on using ethers.js on Pangolin to send a transaction or deploy a contract.