Early-depositor bonus liveFirst $100K TVL6 monthsPaid in USDC

Earn LP fees + a 6-month early-depositor bonus.

Each hooked swap sends 80% back to pool LPs and 20% to treasury. First $100K TVL then shares 50% of that treasury stream for 6 months, time-weighted, capped, and paid in USDC.

This reference app is vault-only: deposit, withdraw, and live stats. Swaps happen on Uniswap, not inside this repo.

Bonus is share-seconds-weighted, capped at $25K per wallet and $10K per monthly epoch. Transfers of vault shares forfeit unclaimed bonus. Program ends after 180 days or when the $100K TVL window closes. Not investment advice.

In plain English

What happens when you deposit USDC.

  1. 01

    You deposit USDC into this vault.

  2. 02

    The vault deploys it as a single-sided concentrated-liquidity position on Uniswap v4 on the WETH / USDC pool.

  3. 03

    Every swap in that pool pays a 25 bps fee (1.5× in volatile blocks, hard-capped at 50 bps).

  4. 04

    80% of that fee is donated back to LPs in the pool — including your vault position — in the same transaction. (The other 20% funds the treasury.)

  5. 05

    The vault auto-compounds. Your share price rises as fees accrue — no harvest, no reinvest, no claim.

Honest caveat. The vault is single-sided: it holds USDC and earns fees while waiting to convert across the owner-configured tick range. During periods when the market price sits inside or above the range, the position is idle until the owner calls rebalance().

Vault overview

Live on-chain state. Deposit to start auto-compounding.

TVL
Total assets under management
Share price
1 share → asset units (×10¹⁸)
Depositors
Unique LPs
Yield collected
Lifetime auto-compounded
Performance fee
Treasury cut on yield
Tick range
Owner-rebalanceable
Vault
WETH / USDC · deposit USDC
AmountBalance: — USDC
Connect a wallet to deposit.
Deposits mint ERC-4626 shares. Share price auto-compounds as hook fees accrue.

How it works

Four contracts, one transaction per swap. No off-chain keepers, no token.

01
Swap triggers the hook
Every swap on the pool calls DynamicFeeHook — a 25 bps fee is computed, scaled 1.5× during volatile blocks.
02
Fee is split and donated
FeeDistributor routes 20% to the treasury and 80% straight into poolManager.donate() — same tx, no escrow.
03
Share price compounds
Donated fees accrue to in-range LPs including the vault position; LiquidityVault share price rises — no claim, no staking.
04
Owner rebalances the range
Ticks are owner-adjustable without touching depositor accounting. Range shifts leave share price untouched.
Contracts · Arbitrum One
LiquidityVault0x87F2…3d71
DynamicFeeHook0x6207…00c4
FeeDistributor0x474F…26C3
BootstrapRewards0x2f9B…7a63
Asset (USDC)0xaf88…5831
Single-sided by design

The vault holds one asset and earns fees while waiting to convert across a configured tick band. On the reference WETH / USDC deployment, depositors park USDC; the vault activates as WETH drops into range. Honest trade-off: during long sideways periods the asset sits idle until the owner rebalances.

Security — anti-sandwich reference-price gating, 48 h timelock on ownership, ERC-4626 virtual-shares inflation mitigation, SafeERC20 on every transfer.