This project implements a custom token bridge between Ethereum Layer 1 (Sepolia testnet) and Arbitrum Layer 2 (Arbitrum Sepolia testnet). The bridge allows for seamless token transfers between the two networks using a custom gateway and token implementation.
- Custom ERC20 token deployment on both L1 and L2
- Custom gateway contracts for cross-chain token transfers
- Support for token minting, burning, and bridging
- Deployment and setup script for easy token bridge configuration
Before getting started, ensure you have the following installed:
- Node.js (v18 or later)
- pnpm (Package manager)
- Ethereum wallet with testnet ETH (Sepolia * Arbitrum Sepolia)
- Clone the repository:
git clone https://github.com/count-sum/ArbitrumTokenBridge.git- Install dependencies:
pnpm i- Set up environment variables:
cp .env.example .env- Update
.envwith :
- PRIVATE_KEY (starts with 0x)
- L1_CHAIN_RPC=
- L2_CHAIN_RPC=
- TOKEN_SUPPLY_AMOUNT=
- TOKEN_BRIDGE_AMOUNT=
- Run the following command to deploy the token and gateway contracts:
npx hardhat scripts/setupAndDeploy.ts