Custom provider

Learn how to configure custom providers and RPC endpoints for optimal performance.

Basic Provider Setup

const { ethers } = require('ethers')
const { MoroBestRate } = require('@moromoro/moro-sdk')

// JsonRpcProvider
const provider = new ethers.providers.JsonRpcProvider(
  'https://rpc.hyperliquid.xyz/evm'
)

const moroClient = new MoroBestRate(provider, 'hyperevm')

Using Custom RPC Endpoints

// High-performance RPC
const customProvider = new ethers.providers.JsonRpcProvider(
  'https://your-custom-rpc.com',
  {
    chainId: 998, // HyperEVM chain ID (example)
    name: 'hyperevm'
  }
)

const moroClient = new MoroBestRate(customProvider, 'hyperevm')

Provider with API Key

WebSocket Provider

For real-time updates and better performance:

Fallback Provider

Use multiple RPC endpoints for reliability:

Provider Caching

Reuse provider instances for better performance:

Custom Network Configuration

Provider with Retry Logic

Provider Performance Monitoring

Environment-Based Configuration

Provider Connection Testing

Multi-Provider Pool

See Also