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
| Network | Endpoints |
|---|---|
| Polkadot Asset Hub | Link |