This is a demo application for making your already deployed token cross-chain using Socket and CCTP. The application allows users to:
- Select the source chain where their token is deployed
- Enter their token address
- Deploy token contracts and vault across multiple chains
- Transfer tokens between different chains
- Arbitrum Sepolia
- Optimism Sepolia
- Base Sepolia
- Node.js 18.x or later
- MetaMask wallet
- Access to the supported testnet chains
- Clone the repository:
git clone <repository-url>
cd cctp-demo
- Install dependencies:
npm install
- Create a
.env.local
file in the root directory with the following variables:
NEXT_PUBLIC_APP_GATEWAY_ADDRESS=<your-app-gateway-address>
NEXT_PUBLIC_ARBITRUM_SEPOLIA_RPC=https://sepolia-rollup.arbitrum.io/rpc
NEXT_PUBLIC_OPTIMISM_SEPOLIA_RPC=https://sepolia.optimism.io
NEXT_PUBLIC_BASE_SEPOLIA_RPC=https://sepolia.base.org
- Start the development server:
npm run dev
- Open http://localhost:3000 in your browser.
- Connect your MetaMask wallet
- Select the source chain where your token is deployed
- Enter your token address
- Deploy the token contracts and vault
- Once deployed, you can transfer tokens between different chains
- Chain selection for source and destination
- Token information fetching
- Contract deployment across multiple chains
- Token approval and transfer functionality
- Real-time balance and allowance checking
- Error handling and user feedback
- Next.js
- TypeScript
- ethers.js
- Tailwind CSS
- Socket Protocol
- CCTP (Cross-Chain Transfer Protocol)