A gas-optimized contract for managing SushiSwap liquidity positions and yield farming in a single transaction.
- 🔄 Single-transaction liquidity provision and staking
- 💰 Automated yield farming setup
- ⚡ Gas-optimized operations
- 🔒 Non-custodial design
- 🛡️ Built-in slippage protection
- 🚀 Streamlined LP token management
The contract operates through two main functions:
-
Join Liquidity Mining:
- Transfers tokens from user
- Adds liquidity to SushiSwap
- Stakes LP tokens in MasterChef (V1 or V2)
-
Exit Liquidity Mining:
- Withdraws from MasterChef (V1 or V2)
- Removes liquidity from SushiSwap
- Returns tokens to user
- ✓ Non-custodial design
- ✓ Slippage protection
- ✓ Deadline checks
- ✓ SafeERC20 implementation
- ✓ No admin privileges
- ✓ Immutable addresses
# Install dependencies
forge install
# Run tests
forge test
forge test --gas-report
# Check test coverage
forge coverage
# Deploy to Arbitrum
forge script script/SushiWallet.s.sol:SushiWalletScript \
--rpc-url $ARBITRUM_RPC_URL \
--broadcast \
--verify \
--etherscan-api-key $ARBISCAN_API_KEY \
--private-key $PRIVATE_KEY \
-vvvv
MIT License - see LICENSE.md