Set up and configure Cosmos RPC endpoints and clients using CosmJS
import { useCosmosClient } from "./useCosmosClient";
const CHAIN_CONFIGS = {
cosmos: {
rpc: "https://rpc.cosmos.network",
prefix: "cosmos"
},
osmosis: {
rpc: "https://osmosis-rpc.polkachu.com",
prefix: "osmo"
},
celestia: {
rpc: "https://celestia-rpc.publicnode.com",
prefix: "celestia"
},
dydx: {
rpc: "https://dydx-dao-rpc.polkachu.com",
prefix: "dydx"
}
};
function MultiChainExample() {
const cosmosClient = useCosmosClient(CHAIN_CONFIGS.cosmos.rpc, CHAIN_CONFIGS.cosmos.prefix);
const osmosisClient = useCosmosClient(CHAIN_CONFIGS.osmosis.rpc, CHAIN_CONFIGS.osmosis.prefix);
const checkChainStatus = async () => {
if (!cosmosClient.publicClient || !osmosisClient.publicClient) return;
const cosmosHeight = await cosmosClient.publicClient.getHeight();
const osmosisHeight = await osmosisClient.publicClient.getHeight();
console.log("Cosmos block height:", cosmosHeight);
console.log("Osmosis block height:", osmosisHeight);
};
return (
<button onClick={checkChainStatus}>Check Chain Status</button>
);
}