Gateway Providers
Gateway providers supply the list of gateways for routing. By default, createWayfinderClient uses a cached TrustedPeersGatewaysProvider.
| Provider | Description | Use Case |
|---|---|---|
NetworkGatewaysProvider | Returns gateways from AR.IO Network | Leverage AR.IO Network with quality filtering |
TrustedPeersGatewaysProvider | Fetches from trusted gateway's peers | Dynamic gateway discovery (default) |
StaticGatewaysProvider | Returns a static list of gateways | Testing or specific gateways |
SimpleCacheGatewaysProvider | In-memory caching wrapper | Reduce API calls (used by default) |
LocalStorageGatewaysProvider | Browser localStorage caching | Persistent caching (used by default in browsers) |
NetworkGatewaysProvider
Returns a list of gateways from the ARIO Network based on on-chain Gateway Address Registry. You can specify on-chain metrics for gateways to prioritize the highest quality gateways. This requires installing the @ar.io/sdk package and importing the ARIO object.
import { NetworkGatewaysProvider } from '@ar.io/wayfinder-core';
import { ARIO } from '@ar.io/sdk';
const gatewayProvider = new NetworkGatewaysProvider({
ario: ARIO.mainnet(),
sortBy: 'operatorStake',
sortOrder: 'desc',
limit: 10,
filter: (gateway) => gateway.status === 'joined',
});TrustedPeersGatewaysProvider
Fetches a dynamic list of trusted peer gateways from an AR.IO gateway's /ar-io/peers endpoint. This provider is useful for discovering available gateways from a trusted source.
import { TrustedPeersGatewaysProvider } from '@ar.io/wayfinder-core';
const gatewayProvider = new TrustedPeersGatewaysProvider({
trustedGateway: 'https://arweave.net',
});How is this guide?