Foundry Axelar GMP Example Now Supports Interchain Token Service (ITS) Integration

Foundry Axelar GMP Example Now Supports Interchain Token Service (ITS) Integration

We're excited to announce that the Foundry Axelar GMP Example repository now features integration with Axelar's Interchain Token Service (ITS). This update empowers developers to build cross-chain applications more efficiently, simplifying the deployment and interaction with interchain tokens.

What is the Interchain Token Service (ITS)?

Axelar's Interchain Token Service allows developers to create and manage tokens that operate seamlessly across multiple blockchain networks. With ITS, you can deploy tokens that are natively cross-chain, eliminating the complexities of bridging and wrapping tokens manually.

ITS leverages sophisticated mechanisms to ensure tokens maintain their integrity and security across chains, offering a robust solution for developers looking to extend their tokens' reach beyond a single blockchain. It scales tokens to many chains, supporting existing and newly minted tokens, preserving native-like fungibility and functionality on connected EVM chains, and automating deployment and maintenance so teams can easily manage supply.

What's New in the Repository?

We've added several new examples to help you get started with ITS:

You can check out the updated repository here: Foundry Axelar GMP Example

How Does This Benefit You?

By integrating ITS into the Foundry Axelar GMP example, we've made it simpler for you to:

  • Develop Multichain Tokens: Easily create tokens that work across different blockchain networks without dealing with multiple codebases.

  • Simplify Cross-Chain Interactions: Use Axelar's General Message Passing (GMP) to interact with contracts on other chains effortlessly.

  • Accelerate Development: Utilize ready-made examples and scripts to speed up your development process.

Getting Started

  1. Clone the Repository:

    Begin by cloning the Foundry Axelar GMP Example repository.

     git clone https://github.com/axelarnetwork/foundry-axelar-gmp-example
    
  2. Navigate into the Project Directory:

     cd foundry-axelar-gmp-example
    
  3. Install Dependencies:

    Run the following command to install all dependencies and build the project:

     make all
    

    This command will:

    • Install the necessary dependencies.

    • Create a .env file from .env.example.

    • Build and update the project.

  4. Start Local Chains:

    To test Axelar GMP locally, start local blockchain networks:

     make local-chain-start
    

    Leave this running in a separate terminal.

  5. Deploy Contracts:

    Deploy the contracts to the local chains:

     make local-chain-deploy
    
  6. Execute Contracts:

    Now you can test General Message Passing (GMP) and other features:

     make local-chain-execute
    

Features

We've included a set of Makefile Commands to streamline your workflow:

  • make all: Install dependencies, build, and update the project.

  • make setup-env: Create a .env file from .env.example.

  • make install: Install all dependencies.

  • make build: Compile the smart contracts.

  • make update: Pull the latest updates for the project.

  • make deploy: Deploy a specific contract to a specified network.

  • make execute: Execute a function of a deployed contract on a specified network.

  • make format: Format the codebase using Foundry's formatter.

  • make test: Run tests with increased verbosity.

  • make clean: Remove generated artifacts.

  • make rpc: Display RPC URLs for various networks.

  • make help: Display the help menu.

  • make local-chain-start: Start local blockchain networks using Anvil.

  • make local-chain-deploy: Deploy contracts to local chains.

  • make local-chain-execute: Execute commands to test GMP with ITS.

    Interchain Token Service (ITS) commands for local chains:

    • make deploy-interchain-token: Deploy an interchain token on local chains.

    • make deploy-mint-burn-token-manager-and-transfer: Set up token managers and perform a transfer on local chains.

    • make deploy-canonical-token: Deploy a canonical token on local chains.

    • make help: Display the help menu with available commands and descriptions.

Interchain Token Service (ITS) commands for testnet:

  • make deploy-canonical-token-testnet: Deploy and register a canonical token on testnet.

  • make transfer-canonical-token-testnet: Perform interchain transfer of a canonical token on testnet.

  • make deploy-interchain-token-testnet: Deploy an interchain token on testnet.

  • make transfer-interchain-token-testnet: Perform interchain transfer of an interchain token on testnet.

  • make deploy-custom-token-testnet: Deploy a custom token on testnet.

  • make transfer-custom-token-testnet: Perform interchain transfer of a custom token on testnet.

Check out the updated repository here: Foundry Axelar GMP Example.

What's Next?

We encourage you to explore the new ITS features and build cross-chain applications. The updated examples are designed to help you grasp the concepts quickly and integrate them into your projects.

Prefer Hardhat? Check out our Axelar Examples repository for more resources.

If you have any questions or need assistance, please open an issue in our support repository. We're here to help!