Who's using the XCM Global Registry?

Hey community :raised_hand_with_fingers_splayed:

Nuno here, product & tech lead @Velocity_Labs.

Velocity Labs is considering taking over the maintenance of the XCM Global Registry. We have already asked a few teams building on Polkadot about their reliance on the project and what improvements everyone is looking for.

From what we gathered, only a few projects are actually using it while most report seeing the value but either just don’t need it or would need some technical improvements for it to become a viable dependency (namely, fixing some wrong multilocations, improving the data structure of the tokens’ metadata and better indexing by multilocation, by local asset id, etc).

Do you use it? What for? What’s lacking or not working at the moment? What other improvements would you be keen on?

Onto a better ecosystem for all :sunny:
Thanks!

6 Likes

hey GM

I was exploring the XCM Global Asset Registry, but as you pointed out the need of technical improvements. I found some issues like missing assets from Polkadot Asset Hub list and inconsistent formatting.

Would love to have a production ready XCM registry :slight_smile:

1 Like

ParaLink (GitHub - ringecosystem/paralink: An XCM-based asset exchange hub that automatically supports assets from all Polkadot parachains.) now uses GitHub - paritytech/asset-transfer-api-registry: Asset registry for asset-transfer-api, which relies on the xcm-global -registry. ParaLink is a beta asset exchange built on XCM that automatically loads asset lists between chains to enable transfers without manual setup. At first, we considered xcm-global-registry, but it was in maintenance mode, so we switched to asset-transfer-api-registry. It’s good to see xcm-global-registry active again!

However, it seems xcm-global-registry and asset-transfer-api-registry serve similar purposes, so it might be better to maintain just one thoroughly.

2 Likes

Cool :slight_smile:

What would you use it for?

As you mention, the AT API registry is just a wrapper around the GAR so it’s not quite a competitor. Regardless, I agree we should thrive to maintain an excellent one rather than keeping two that are not delivering on what real users and teams need.

What features do you miss from the AT API Registry? And what’s been helpful for your project?

Hello GM,

As mentioned, the asset-transfer-api-registry utilizes the xcm-global-registry as part of the asset registry it provides, pulling in its xcAssets data daily. This data is used within the Asset Transfer API for creating XCM transactions from parachains.

The two notable things that have been issues recently for us are the parents values for global consensus Polkadot assets having incorrect values and junctions with multiple keys (e.g. GeneralKey junctions) appearing as nested arrays within asset locations. Both of these issues have been fixed but improvements to the xcm-global-registry’s stability/usability are welcomed.

1 Like

Cross-chain Applications (basic example: wallets) would benefit greatly from this if it included Add Reserve/Teleport information to assets · Issue #48 · colorfulnotion/xcm-global-registry · GitHub.

It’d allow programmatically building cross-chain asset transfers for any assets covered by the xcm-global-registry.

3 Likes

Nice question. Some areas can be improved, so a transformed JSON file was created based on the asset-transfer-api JSON file. See it at paralink/output/transformed-chain-registry.json at 09b3a13522bb93a9dbb6d1d931ae797b1f2409d8 · ringecosystem/paralink · GitHub. The JSON structure was refactored for better readability and ease of use. Missing features such as price_id, xcmPaymentAcceptTokens, icon, etc. could be added to the upstream JSON.