Skip to content

A sdk to fetch chain information from registries for active endpoints.

License

Notifications You must be signed in to change notification settings

ixofoundation/cosmos-chain-resolver

Repository files navigation

COSMOS CHAIN RESOLVER 🔗

GitHub contributors GitHub repo size Twitter Follow Medium

NodeJSTypeScript


An SDK to fetch and filter chain information


This repo and product is intentionally managed as Open Source and we aim to use this guide to light our way https://opensource.guide/. Let us know how we are doing!

🔨 Install

npm install @ixo/cosmos-chain-resolver

yarn add  @ixo/cosmos-chain-resolver

💻 Usage

To use the Cosmos Chain Resolver, you can import the function(s) you want to use and execute it with the appropriate parameters.

import {
	getRegistryChainInfo,
	getActiveRpcFromRegistryChainInfo,
	getActiveRpcFromChainName,
	getChainExplorer,
	getChainExplorerAsync,
	getKeplrChainInfoFromRegistryChainInfo,
	getKeplrChainInfo,
} from '@ixo/cosmos-chain-resolver';

The Cosmos Chain Resolver SDK expose the following functions:

getRegistryChainInfo

getRegistryChainInfo(chainName: string, chainNetwork?: ChainNetwork): Promise<RegistryChainInfo>

This function fetches the chain info for the provided chainName and chainNetwork. If chainNetwork is not provided, it defaults to mainnet.

getActiveRpcFromRegistryChainInfo

getActiveRpcFromRegistryChainInfo(chainInfo: RegistryChainInfo): Promise<string>

This function filters through and fetches an active RPC endpoint from the provided chainInfo.

getActiveRpcFromChainName

getActiveRpcFromChainName(chainName: string, chainNetwork?: ChainNetwork): Promise<string>

This function fetches an active RPC endpoint for the provided chainName and chainNetwork. If chainNetwork is not provided, it defaults to mainnet.

getChainExplorer

getChainExplorer(chainName: string, chainNetwork: ChainNetwork, chainExplorers?: ChainExplorer[]): KeplrChainExplorer | undefined

This function fetches the tx explorer info for the provided chainName, chainNetwork and chainExplorers.

getChainExplorerAsync

getChainExplorerAsync(chainName: string, chainNetwork: ChainNetwork): Promise<KeplrChainExplorer | undefined>

This function fetches the tx explorer info for the provided chainName and chainNetwork via the Cosmos Chain Registry.

getKeplrChainInfoFromRegistryChainInfo

getKeplrChainInfoFromRegistryChainInfo(chainInfo: RegistryChainInfo): Promise<KeplrChainInfo>

This function fetches the keplr chain info for the provided chainInfo.

getKeplrChainInfo

getKeplrChainInfo(chainNameOrId: string, chainNetwork: ChainNetwork = MAINNET, ): Promise<KeplrChainInfo>

This function fetches the keplr chain info for the provided chain id or the chain name-and-network.

📱 Example

import { getKeplrChainInfo } from '@ixo/cosmos-chain-resolver';

// fetch chain info via chain id
const ixoKeplrChainInfo = await getKeplrChainInfo('ixo-5');

// fetch chain info via chain name and network
const ixoTestnetKeplrChainInfo = await getKeplrChainInfo('impacthub', 'testnet');
import { getRegistryChainInfo, getKeplrChainInfoFromRegistryChainInfo } from '@ixo/cosmos-chain-resolver';

// fetch chain info via chain id
const ixoRegistryChainInfo = await getRegistryChainInfo('impacthub', 'mainnet');

// fetch chain info via chain name and network
const ixoKeplrChainInfo = await getKeplrChainInfoFromRegistryChainInfo(ixoRegistryChainInfo);

📃 License

This SDK is licensed under the Apache 2 License. See the LICENSE file for more information.

About

A sdk to fetch chain information from registries for active endpoints.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •