Eth2Aztec-Bridge

Mint USDC on Sepolia and bridge to Aztec Obsidian—fast, private, simple.

Eth2Aztec-Bridge

Created At

ETHGlobal Buenos Aires

Project Description

This project is a complete end-to-end system for distributing, bridging, and privately receiving USDC across Ethereum (Sepolia) and Aztec Obsidian. It combines an on-chain faucet, a custom smart-contract deployment, a backend execution server, and a polished front-end experience to enable users to receive USDC test tokens and bridge them privately into the Aztec ecosystem.

The flow begins with a TestUSDC (tUSDC) Faucet deployed on Sepolia, allowing users to claim 1000 tUSDC once every 24 hours. A secure Node/Express backend signs and submits faucet transactions using an owner wallet, while enforcing basic anti-abuse rate limits.

On the front end, users connect their Ethereum wallet, confirm the Sepolia network, and execute faucet claims. The interface displays transaction hashes, status messages, and cooldown timers. The faucet panel is integrated into a larger Human.tech × Aztec Bridge UI, allowing users to immediately bridge their newly received tokens to Aztec Obsidian for use as cUSDC, a private asset within the Aztec privacy-preserving L2 environment.

The result is a seamless, user-friendly on-ramp into private assets on Aztec, pairing Human.tech’s bridge interface with a custom token faucet. This becomes the foundation for cross-chain airdrops, private reward distribution, and future privacy-preserving applications.

How it's Made

This project combines smart contracts, cross-chain infrastructure, and a custom full-stack application to create a seamless USDC airdrop and bridging experience from Ethereum Sepolia to the Aztec Obsidian privacy network. The backend is built with Node.js, Express, and Ethers.js and interacts directly with a deployed Faucet contract on Sepolia. A custom ERC-20 token (TestUSDC) and a Faucet smart contract were written and deployed using Hardhat and OpenZeppelin, with ownership transferred to the faucet for secure minting.

The frontend is built with React, TypeScript, and Vite, styled using Tailwind and ShadCN components. It handles wallet connection, network validation, rate limiting, and transaction feedback. The faucet UI integrates directly with the official Human.tech → Aztec Bridge via an embedded iframe, enabling users to immediately bridge their freshly claimed test USDC to Aztec as private cUSDC.

To enhance security and user experience, the app implements client-side cooldown logic, backend validation, JSON-RPC signing, and a controlled request flow to prevent abuse. The system pieces together Ethereum L1 smart contracts, a web backend signer, and Aztec’s bridging interface into a unified, cross-chain airdrop pipeline. The hackiest part was getting the faucet backend, the custom contracts, and the Human.tech bridge UI to work together smoothly in one interface—effectively creating a full-stack cross-chain airdrop engine.

background image mobile

Join the mailing list

Get the latest news and updates

Eth2Aztec-Bridge | ETHGlobal