Projects → LP Locker
Smart ContractLP Locker
Immutable LP token locking on Base L2. Verifiable on-chain anti-rug protection for token projects.
LP pulled overnight.
Investors left holding nothing.
Liquidity is the lifeblood of any token project — and it's also its most exploitable weakness. Bad actors raise capital, then silently drain the liquidity pool, collapsing token price overnight.
- 💀 Rug pulls cost investors billions every year
- 🚨 No on-chain enforcement stops LP withdrawals
- 👻 Teams vanish after pulling liquidity
Lock it on-chain.
Prove it to your community.
LP Locker lets token projects lock DEX LP tokens directly on Base L2 for a minimum of 30 days. The contract is immutable — no admin keys, no upgrades, no backdoors. Code is law. A full frontend app makes it easy to create locks, browse existing ones, and extend or unlock directly in the UI.
- 🔒 LP tokens locked on-chain for min 30 days
- ✅ Immutable contract — verifiable by anyone
- 🛡 Built with OpenZeppelin's battle-tested guards
- 🖥 Full frontend app — create, browse, extend, and unlock
Features
Built for trust. Built to last.
Every design decision in LP Locker serves one goal: making LP locks verifiably trustworthy.
Immutable
Deployed once, never upgraded. No admin keys. No backdoors. Code is law.
Full Frontend App
A complete web interface: landing page, lock creation wizard (token info → approve → lock), and a searchable lock browser with detail, unlock, and extend flows.
EIP-6963 Wallet Connection
Connect with MetaMask or WalletConnect v2 via the EIP-6963 multi-wallet standard. No vendor lock-in.
Lock Browser
Search and filter all on-chain locks by token, address, or status. View full lock details, then unlock or extend from the same interface.
0.005 ETH Lock Fee
A flat 0.005 ETH fee to create a lock. Predictable, fair, and low.
0.0025 ETH Extension Fee
Extend any active lock for half the lock fee. Flexibility without compromise.
Fuzz & Invariant Tests
Foundry fuzz tests and invariant tests hammer the contract with randomized inputs to surface edge cases no unit test can find.
Gas Benchmarks
Every critical path is gas-benchmarked. Know exactly what each operation costs before deploying.
ReentrancyGuard
Built on OpenZeppelin's ReentrancyGuard to prevent reentrancy attacks.
Multi-Network Deployment
Deployment scripts target both Base Sepolia (testnet) and Base mainnet. One command per network.
Tech
Built on proven foundations
LP Locker is built with industry-standard tooling, auditable from day one.
The smart contract is written in Solidity 0.8.28, tested with Foundry — including fuzz tests,
invariant tests, and gas benchmarks — and deployed on Base L2 for fast, cheap, Ethereum-secured
transactions. OpenZeppelin's ReentrancyGuard and SafeERC20 modules
guard every interaction.
The frontend is built in TypeScript with Viem for on-chain reads and writes, and EIP-6963 multi-wallet discovery for seamless MetaMask and WalletConnect v2 support. Deployment scripts target both Base Sepolia and Base mainnet.
How It Works
Lock in six simple steps
From wallet connect to on-chain proof of liquidity lock — in minutes.
Connect Your Wallet
Open the app and connect with MetaMask or WalletConnect v2 via EIP-6963 wallet discovery. No extensions required beyond your preferred wallet.
Browse Existing Locks
Use the lock browser to search locks by token address or project. View full details — token pair, amount, unlock date, and owner — directly in the UI.
Start a New Lock
Enter your LP token address. The app fetches token metadata on-chain and shows your balance. Confirm the amount and unlock duration (minimum 30 days).
Approve & Pay the Fee
Approve the contract to spend your LP tokens, then send the lock transaction with 0.005 ETH. Two wallet confirmations — approval then lock — and you're done.
Lock Recorded On-Chain
Your LP tokens are transferred to the immutable contract. The lock is recorded on-chain and immediately visible in the lock browser — publicly verifiable by anyone.
Withdraw or Extend
After the unlock date, withdraw your LP tokens at any time. Or, extend the lock before it expires for 0.0025 ETH — directly from the lock detail view.