Skip to main content

Connecting with ethers.js

ethers.js is a widely used JS/TS library for interacting with Ethereum-compatible chains. DeServe provides Ethereum-compatible RPC endpoints for Polkadot Asset Hub via the Revive pallet.

Installation

npm install ethers

Connecting to the geo-steered endpoint

import { ethers } from 'ethers';

const provider = new ethers.JsonRpcProvider(
'https://asset-hub.polkadot.eth-rpc.deserve.network'
);

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

Connecting to a regional endpoint

import { ethers } from 'ethers';

// replace with your preferred regional endpoint
const provider = new ethers.JsonRpcProvider(
'https://london.asset-hub.polkadot.eth-rpc.deserve.network',
);

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

Connecting with viem

viem is a modern TypeScript alternative to ethers.js:

npm install viem
import { createPublicClient, http } from 'viem';

const client = createPublicClient({
transport: http('https://asset-hub.polkadot.eth-rpc.deserve.network'),
});

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

Available endpoints

NetworkEndpoints
Polkadot Asset HubLink