Skip to content

Latest commit

 

History

History
87 lines (60 loc) · 2.87 KB

README.md

File metadata and controls

87 lines (60 loc) · 2.87 KB

Candide Intent

A smart contract implementation of ERC-7683: Cross Chain Intents Standard, enabling secure cross-chain transactions. This implementation is inspired by and adapted from Candide Labs' CandideWallet contract.

About ERC-7683

ERC-7683 is a proposed standard for cross-chain intents that aims to unify how different protocols handle cross-chain transactions. Developed collaboratively by Across and Uniswap Labs, the standard:

  • Enables sharing of infrastructure, filler networks, and orders across cross-chain bridging and trading systems
  • Provides a unified framework for intent-based systems to specify cross-chain actions
  • Allows users to express desired outcomes without worrying about the underlying mechanics
  • Supports both gasless and onchain cross-chain orders
  • Creates a more efficient and competitive market for cross-chain transactions

Credit

This implementation builds upon the work of Candide Labs, specifically their CandideWallet smart contract implementation. The base wallet functionality has been extended to support ERC-7683's cross-chain intent standard while maintaining the security features of the original contract.

Key Components

The project combines:

  • Account abstraction capabilities from Candide's wallet implementation
  • ERC-7683's cross-chain intent standard
  • Custom settlement logic for cross-chain transactions

Install

pnpm install

Create environment file:

cp .env.template .env

Test

pnpm test

Deploy

pnpm deploy:sepolia      # Sepolia testnet
pnpm deploy:optimism     # Optimism mainnet
pnpm deploy:op-sepolia   # Optimism Sepolia

Networks

Development

pnpm prettier            # Format code
pnpm compile            # Compile contracts

Project Structure

  • contracts/: Smart contract implementations
    • CandideIntentWallet.sol: Main contract implementing ERC-7683 and Candide's wallet features
    • mocks/: Test helper contracts
  • test/: Contract test suite
  • scripts/: Deployment and utility scripts

Dependencies

  • Node v20.9.0
  • PNPM v9.12.2
  • Hardhat v2.19.4
  • OpenZeppelin v5.0.1
  • Ethers v6.10.0
  • Account Abstraction Contracts v0.7.0

License

GPL-3.0

Support

You can contact me via Element, Farcaster, Telegram, Twitter, Discord, or LinkedIn.