A stablecoin commerce app built natively on Arc Testnet - powered by Circle.
Live Demo Β· Report a Bug Β· Twitter Β· Telegram
Axoo is a Web3 application on Arc Testnet, Circle's stablecoin-native L1. It brings together onchain trade escrow, token swaps, cross-chain bridging, and stablecoin transfers into a single interface β built on Arc's officially pre-deployed ERC-8004 / ERC-8183 contracts and Circle's App Kit.
Access to the app is gated by a Genesis Pass NFT, an ERC-721 contract deployed by this project.
- Features
- Tech Stack
- Smart Contracts
- Getting Started
- Environment Variables
- Screenshots
- Roadmap
- Changelog
- License
- Connect via Reown AppKit
- Multi-wallet support (MetaMask and any EIP-6963-compatible wallet)
- Real-time account info and network status
- USDC and EURC balances
- NFT holdings
- Total assets overview
Built on Arc's ERC-8004 (Identity Registry) and ERC-8183 (Agentic Commerce) contracts.
- Onchain trade identity registration for buyers and suppliers
- Purchase order creation with supplier-set pricing
- Milestone-based USDC escrow:
Created β Funded β Submitted β Completed - Proof-of-delivery submission before funds release
- Every step is a real onchain transaction β no off-chain state
Powered by Circle App Kit.
- USDC β EURC swaps
- Quote estimation with configurable slippage
- Swap history with ArcScan explorer links
Powered by Circle's CCTP (Cross-Chain Transfer Protocol).
- Bridge USDC from Base Sepolia to Arc Testnet
- Bridge history tracking
- Multi-chain support
Powered by Circle App Kit's browser wallet flow.
- Direct wallet-to-wallet USDC transfers on Arc Testnet
- Transaction estimation before sending
- ArcScan transaction verification
- ERC-721 access pass, deployed by this project
- Gates access to Escrow, Swap, Bridge, and Send
| Layer | Technologies |
|---|---|
| Frontend | Next.js 16, React 19, TypeScript, Tailwind CSS |
| Web3 | Wagmi, Viem, Reown AppKit |
| Circle Ecosystem | @circle-fin/app-kit, @circle-fin/adapter-viem-v2 |
| Data & UI | TanStack Query, Recharts, Sonner, Lucide React |
Contract addresses on Arc Testnet:
| Contract | Address | Deployed by |
|---|---|---|
| Genesis Pass (ERC-721) | [fill in NEXT_PUBLIC_GENESIS_PASS_CONTRACT] |
This project |
| Identity Registry (ERC-8004) | 0x8004A818BFB912233c491871b3d84c89A494BD9e |
Arc (shared, official) |
| Agentic Commerce / Escrow (ERC-8183) | 0x0747EEf0706327138c69792bF28Cd525089e4583 |
Arc (shared, official) |
| Reputation Registry | 0x8004B663056A597Dffe9eCcC1965A193B7388713 |
Arc (shared, official) |
| Validation Registry | 0x8004Cb1BF31DAf7788923b405b754f57acEB4272 |
Arc (shared, official) |
The Genesis Pass is the only contract deployed specifically for ARCora. Escrow and identity functionality build on Arc's shared, officially pre-deployed tutorial contracts rather than reimplementing them β Swap and Bridge run through Circle's App Kit / CCTP infrastructure.
- Node.js 18+
- npm
git clone https://github.com/Arcticoz/arcora.git
cd arcora
npm installnpm run devThen open http://localhost:3000.
Create a .env.local file in the project root:
PRIVATE_KEY=your_private_key
KIT_KEY=KIT_KEY:your_key_id:your_key_secret
NEXT_PUBLIC_GENESIS_PASS_CONTRACT=0x...
PRIVATE_KEYandKIT_KEYare server-only secrets β never commit them or expose them to the client.NEXT_PUBLIC_GENESIS_PASS_CONTRACTis safe to expose since it's a public contract address.
- Fully client-signed Swap flow (currently routed through a backend proxy due to CORS on Circle's Stablecoin Kit service)
- Autonomous agent provider for Trade Escrow β an automated wallet that listens for jobs and fulfills them without manual interaction
- Deeper integration with Circle Agent Stack (Agent Wallets, Circle CLI, Agent Marketplace)
Replaced the custom Solidity ERC-721 contract with Circle's official Smart Contract Template.
- Migrated deployment to the Circle SDK workflow
- Removed dependency on a manually maintained ERC-721 contract
- Standardized deployment according to Circle documentation
- Improved integration with the Circle Developer Platform
MIT