Pure CosmWasm implementation of ICS-27. Able to control all IBC chains, even those without Wasm support. It bypasses the limitations of the Go API.
Description
This journey began with an ambitious goal: to develop a pure CosmWasm implementation of ICS-27. I achieved this, creating an infrastructure that allows CosmWasm contracts to manage accounts on other chains, bypassing the need for deploying contracts on counterparty chain. This infrastructure overcomes the limitations of the existing Go implementation of ICS-27 that, in CosmWasm environments, make it unusable. Unlocking new potential in cross-chain DeFi, such as:
- Managing accounts on chains lacking native smart contract support.
- Deploy applications to chains that might not even support smart contracts.
- Pioneering in Interchain SocialFi and DAO initiatives.
- Privacy preserving interchain accounts (assuming that a privacy preserving VM exists, e.g. Secret Network)
Users
I build this contract because I thought it was interesting and innovative. But it turns out, this contract is also very useful.
Previously, contract developers wouldn’t be receiving callbacks from packet and channel lifecycle events of their ICA channels unless they were using the chain specific bindings of Neutron (which wouldn’t work on any other Cosmos chain). With this contract, users have all the power of the Neutron bindings and more on every CosmWasm chain.
Moreover, even CosmWasm chains such as Secret Network which has not implemented ICS-27 controller module in their golang code can use this contract since this is a pure CosmWasm implementation.
Although this project hasn’t been in active development for very long, there are already some projects integrating it:
- Winner of the Injective Illuminate Hackathon Project! (See demo below)
- Jackal Network Outposts
- AbstractSDK
- Nomos Abstraction (Abstractathon Winner!) (see demo below)
- Secret Network
Need for Funding
This project is currently maintained by a single core-contributor of ibc-go without any funding. Although I built a very robust testing suite with Strangelove’s interchain test, this repo is in need of an audit before it can be widely deployed. More funding would also allow me to maintain the high standard of quality I’ve set for this repo and add new contributors to the project.
Demo
This project is an infrastructure project that allows other contracts to create and manage accounts on other chains. So, instead of simply demoing the infrastructure, I’ll instead provide multiple demos by other projects.
This project was used in the Injective Illuminate Hackathon and XION ABSTRACTATHON winner projects Tokenized Interchain Accounts, Nomos Abstraction on Xion
XION ABSTRACTATHON
Buying and selling and NFT from Xion on Injective using Nomos SDK and ICA controller
Creating Vaults and Buying/Selling NFTs on Injective – Watch Video
Injective Illuminate Hackathon
Each NFT controls an interchain account. The following is a demo of the project: