This project enables trust-minimized cross-chain swaps between multiple chains using a combination of:
- Limit Order Protocol on EVM-compatible chains
- Hashed TimeLock Contracts for Starknet
- Place or fill orders via LOP.
- Lock assets on one chain using HTLC.
- Redeem or refund tokens depending on secret/key revelation.
EVM Chains (Sepolia, Monad)
- Integrated 1inch Limit Order Protocol (LOP) for off-chain signed orders.
- Deployed a custom LOP contract on Monad to replicate Sepolia functionality.
- Built an Escrow Factory contract to spawn HTLC instances per swap.
Starknet
- Deployed a Cairo-based Factory contract for asset locking and timed refunds.
- Used scripts + wallet keys from .env to interact directly with the contracts.
Swap Flow
- User signs an order with LOP on Sepolia/Monad.
- Counterparty locks funds in an HTLC on Starknet (or Monad).
- The secret preimage revealed on redemption enables unlocking on the opposite chain.
- Scripts orchestrate execution
Interactive CLI Tool
- Built a command-line interface that lets users initiate and complete swaps interactively.
- Supports bi-directional swaps between Sepolia ↔ Monad ↔ Starknet.
- Users can specify custom tokens, amounts, and counterparties without touching contracts manually.
Tech stack
- Node.js CLI with inquirer for prompts and interactive flows.
- ethers.js for EVM contracts, starknet.js for Starknet.