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

We're excited to announce that the [Foundry Axelar GMP Example](https://github.com/axelarnetwork/foundry-axelar-gmp-example) repository now features integration with [Axelar's Interchain Token Service (ITS)](https://docs.axelar.dev/dev/send-tokens/interchain-tokens/intro/). 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](https://docs.axelar.dev/dev/send-tokens/interchain-tokens/intro/) 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:

* [**New Interchain Token Example**](https://github.com/axelarnetwork/foundry-axelar-gmp-example/blob/main/src/its-interchain-token): Learn how to deploy a brand-new interchain token using ITS.
    
* [**Canonical Token Deployment Example**](https://github.com/axelarnetwork/foundry-axelar-gmp-example/blob/main/src/its-canonical-token): Discover how to deploy a canonical token that serves as a single source of truth across chains.
    
* [**Interchain Custom Token Example**](https://github.com/axelarnetwork/foundry-axelar-gmp-example/blob/main/src/its-interchain-token): Explore how to create and interact with custom tokens with interchain functionality.
    

You can check out the updated repository here: [Foundry Axelar GMP Example](https://github.com/axelarnetwork/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.
    
    ```bash
    git clone https://github.com/axelarnetwork/foundry-axelar-gmp-example
    ```
    
2. **Navigate into the Project Directory**:
    
    ```bash
    cd foundry-axelar-gmp-example
    ```
    
3. **Install Dependencies**:
    
    Run the following command to install all dependencies and build the project:
    
    ```bash
    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:
    
    ```bash
    make local-chain-start
    ```
    
    Leave this running in a separate terminal.
    
5. **Deploy Contracts**:
    
    Deploy the contracts to the local chains:
    
    ```bash
    make local-chain-deploy
    ```
    
6. **Execute Contracts**:
    
    Now you can test General Message Passing (GMP) and other features:
    
    ```bash
    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](https://github.com/axelarnetwork/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](https://github.com/axelarnetwork/axelar-examples) for more resources.

If you have any questions or need assistance, please open an issue in our [support repository](https://github.com/axelarnetwork/axelar-support). We're here to help!
