UniHooks

Every Uniswap v4 hook, live

Every hook attached to at least one Uniswap v4 pool, explained in plain English, with safety checks and the pools that use it.

Filters 1
Type
Safety
Activity
Permissions
Hooks with all of the selected permissions:
Sort
AgeHookChainPermissionsPools
16mo EulerSwapEulerSwap is a Uniswap v4 hook implementing a custom AMM curve backed by Euler lending vaults. Swaps are fully handled in beforeSwap: input tokens are deposited to and output tokens withdrawn from Euler vaults, with amounts determined by a custom pricing curve that verifies a reserve invariant. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom-curve AMM hook backed by Euler Finance vaults. In beforeSwap, it computes a quote via a custom bonding curve (CurveLib), deposits input tokens into an Euler vault, withdraws output tokens from another vault, and returns a BeforeSwapDelta to settle balances directly—bypassing standard concentrated liquidity. beforeAddLiquidity and beforeDonate always revert to prevent non-productive positions. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom curve AMM hook for Euler Finance single-LP pools. In beforeSwap, it computes input/output amounts using a custom pricing curve, takes input tokens from the PoolManager into an Euler vault, and pays output tokens from another Euler vault—bypassing Uniswap v4 concentrated liquidity entirely. Standard liquidity additions and donations are blocked via revert. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapEulerSwap is a Uniswap v4 hook implementing a custom AMM curve backed by Euler Finance vaults. Each pool instance is a minimal proxy clone. Swaps are handled entirely in beforeSwap: input tokens are deposited into and output tokens withdrawn from Euler vaults, bypassing native concentrated liquidity and enforcing a custom curve invariant. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom AMM hook that routes swaps through Euler Finance lending vaults, depositing input tokens and withdrawing output tokens according to a custom bonding curve. Implements a full custom curve (not CLAMM) and uses beforeSwapReturnsDelta to handle all token accounting directly, preventing standard concentrated liquidity positions. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo FeeCollectHookCollects and processes fees for registered LP tokens after each swap by calling an external AutoRepayingManager contract in batches of up to 3. Pools and LP token IDs must be registered by the manager; unauthorized pools are skipped. Base afterSwap 1 16mo EulerSwapA custom-curve AMM hook that routes swaps through Euler Finance lending vaults. It fully handles swap execution via beforeSwapReturnsDelta, using a custom bonding curve (CurveLib) to determine pricing, depositing input tokens into and withdrawing output tokens from Euler vaults on each swap. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom-curve AMM hook that uses Euler lending vaults as liquidity sources. On each swap it takes input tokens and deposits them into an Euler vault, then withdraws output tokens from another vault, verifying the trade against a custom bonding-curve invariant. Native v4 liquidity positions are intentionally blocked. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom-curve AMM hook that routes swaps through Euler Finance lending vaults, bypassing Uniswap v4 concentrated liquidity entirely. In beforeSwap, it computes quotes via a proprietary reserve-curve invariant, deposits input tokens into an Euler vault, withdraws output tokens from another Euler vault, and returns a full BeforeSwapDelta to settle all accounting with the pool manager. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapEulerSwap is a Uniswap v4 hook that implements a custom AMM routing swaps through Euler lending vaults. It handles full swap execution in beforeSwap via beforeSwapReturnsDelta, depositing input tokens into and withdrawing output tokens from Euler vaults using a custom bonding curve. Concentrated liquidity positions are intentionally blocked. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA Uniswap v4 hook implementing a custom AMM curve backed by Euler Finance vaults. In beforeSwap, it deposits input tokens into an Euler lending vault and withdraws output tokens from another, returning the full swap delta to the pool manager. Each instance is a delegatecall proxy with immutable curve parameters; direct liquidity additions and donations are blocked. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom-curve AMM hook for Uniswap v4 that routes swaps entirely through Euler vault positions. It fully takes over swap execution via beforeSwapReturnsDelta, depositing input tokens into the input vault and withdrawing output tokens from the output vault, while verifying reserve changes against its own bonding curve (CurveLib). Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA Uniswap v4 hook implementing a custom AMM curve backed by Euler lending vaults. On each swap, input tokens are deposited into and output tokens are withdrawn from Euler vaults; the hook enforces a concentration-based reserve curve invariant and returns a BeforeSwapDelta to handle all accounting directly. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapCustom-curve AMM hook for Uniswap v4 that routes swaps entirely through Euler Finance lending vaults. The beforeSwap hook handles all token accounting by depositing input tokens into and withdrawing output tokens from Euler vaults, returning a BeforeSwapDelta to bypass Uniswap's standard concentrated-liquidity pricing. Liquidity additions and donations are intentionally blocked. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom AMM hook that implements a proprietary bonding curve backed by Euler Finance vaults. All swap accounting is handled in beforeSwap: input tokens are deposited into an Euler vault and output tokens are withdrawn from another Euler vault, with the curve invariant verified after each swap. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapEulerSwap is a custom AMM hook backed by Euler Finance vaults, implementing a configurable liquidity concentration curve. In beforeSwap, it computes quotes using its own curve math, routes tokens through Euler vault deposits/withdrawals, and returns a BeforeSwapDelta to handle all swap accounting directly. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom-curve AMM hook that routes swaps through Euler Finance lending vaults. Implements its own bonding-curve pricing (CurveLib) and executes swaps entirely in beforeSwap via BeforeSwapDelta, bypassing standard Uniswap v4 concentrated liquidity. Liquidity addition and donations are intentionally blocked. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapCustom-curve AMM hook for Uniswap v4 that fully handles swaps in beforeSwap, routing input tokens into and output tokens out of paired Euler Finance vaults. Enforces a configurable concentration curve invariant (not x*y=k) and uses BeforeSwapDelta to bypass standard pool math entirely. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapCustom AMM hook backed by Euler Finance vaults. Executes swaps entirely in beforeSwap using a custom bonding curve (CurveLib), depositing input tokens into and withdrawing output tokens from EVC-managed Euler vaults, and returns a BeforeSwapDelta to bypass standard pool liquidity. Reverts on beforeAddLiquidity and beforeDonate to prevent non-productive positions. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom AMM hook that replaces Uniswap v4's concentrated liquidity with its own curve backed by Euler Finance vaults. Swaps are fully handled in beforeSwap: input tokens are deposited into an Euler vault and output tokens are withdrawn from another, with curve invariant verification on each swap. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom AMM hook that routes swaps through Euler lending vaults using a configurable bonding curve, bypassing Uniswap's native concentrated liquidity. All swap accounting is handled in beforeSwap via a reserve-based invariant check, with the hook taking input tokens and paying output tokens directly through Euler vaults. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo TestHookA minimal test hook that increments an on-chain counter and emits events on beforeInitialize and beforeAddLiquidity calls. Has no swap hooks and does not modify swap execution. Arbitrum beforeInitbeforeAddLiq 1 16mo EulerSwapEulerSwap is a Uniswap v4 hook implementing a custom AMM curve backed by Euler Finance lending vaults. Swaps are handled entirely in beforeSwap: input tokens are deposited into EVaults, a custom curve invariant is verified, and output tokens are withdrawn from EVaults. Concentrated liquidity positions and donations are blocked by design. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA Uniswap v4 hook implementing a custom AMM backed by Euler Finance vaults. In beforeSwap, it fully handles token routing by taking inputs from the pool manager, depositing them into Euler vaults, and withdrawing outputs — bypassing standard concentrated liquidity in favor of a custom curve invariant with fee collection and reserve tracking. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapEulerSwap implements a custom AMM curve as a Uniswap v4 hook, routing swap assets through Euler Finance vaults and enforcing a custom curve invariant instead of Uniswap's concentrated liquidity. It fully replaces swap execution via beforeSwapReturnsDelta, and intentionally blocks native liquidity provision and donations. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapCustom AMM hook that routes swaps through Euler Finance vault positions using a proprietary curve invariant. Uses beforeSwapReturnsDelta to fully handle swap execution — taking input tokens into an Euler vault and withdrawing output tokens from another — replacing Uniswap v4's native concentrated liquidity with a custom pricing curve. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapCustom AMM curve hook backed by Euler lending vault positions. Executes all swap logic in `beforeSwap` via a `BeforeSwapDelta` return, routing input tokens into and output tokens out of Euler vaults using a configurable curve invariant. Liquidity addition and donation are permanently blocked via revert. Deployed as delegatecall proxy instances pointing to an immutable implementation. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapEulerSwap is a custom-curve AMM hook that routes swaps through Euler lending vaults. It implements a configurable bonding curve, depositing swap input into an Euler vault and withdrawing output from another, bypassing Uniswap v4 concentrated liquidity entirely. Ethereum beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom AMM hook that implements a proprietary curve invariant backed by Euler Finance lending vaults. In beforeSwap, it deposits input tokens into and withdraws output tokens from Euler vaults, handling all swap accounting via BeforeSwapDelta. Standard v4 liquidity positions are blocked; the hook acts as a fully custom liquidity source. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom-curve AMM hook backed by Euler Finance lending vaults. In beforeSwap, the hook handles the entire swap: it takes input tokens from the pool manager, deposits them into an Euler vault, withdraws output tokens from another vault, and verifies the trade against a custom concentration curve constraint. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom-curve AMM hook for Uniswap v4 that routes swaps entirely through Euler Finance lending vaults. On each swap, it takes the input token from the PoolManager, deposits it into the corresponding Euler vault, withdraws the output token from another Euler vault, and returns a BeforeSwapDelta — enforcing a configurable bonding curve invariant on every trade. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapCustom curve AMM hook that routes swaps through Euler Finance lending vaults, implementing an asymmetric bonding curve for two paired vault assets. Replaces standard Uniswap v4 concentrated liquidity with a hook-managed reserve system; standard LP positions are blocked. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA Uniswap v4 hook implementing a custom AMM backed by Euler Finance vaults. Each swap deposits the input token into and withdraws the output token from Euler vaults, with reserves validated against a configurable custom curve invariant. Standard CLAMM liquidity provision is intentionally blocked. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom curve AMM hook backed by Euler lending vaults. On each swap, input tokens are deposited and output tokens are withdrawn from the respective Euler vaults, with a proprietary bonding curve invariant verified against reserve balances. Concentrated liquidity positions and donations are intentionally blocked to prevent irrecoverable asset loss. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapEulerSwap is a Uniswap v4 hook implementing a custom AMM curve backed by Euler Protocol vaults. In beforeSwap, input tokens are deposited into an Euler vault and output tokens are withdrawn from another vault; a custom curve invariant enforces valid reserve ratios. The hook blocks native concentrated liquidity (beforeAddLiquidity reverts) and unauthorized pool initialization (beforeInitialize reverts). Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom curve AMM hook backed by Euler Finance vaults. Each swap deposits input tokens into and withdraws output from Euler vaults, enforcing a custom price invariant curve on each trade. Conventional concentrated liquidity positions are intentionally blocked; each deployed pool is a minimal delegatecall proxy to a shared implementation. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA Uniswap v4 hook implementing a custom single-LP AMM curve backed by Euler vaults. Swaps are processed entirely in `beforeSwap` using a custom pricing curve with delta overrides, bypassing standard pool liquidity; the two tokens are deposited/withdrawn directly from paired Euler vaults. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapCustom curve AMM hook that routes swaps through Euler Finance vaults. Takes input tokens into Euler vaults and pays output tokens from vault collateral, verifying a custom bonding curve invariant (CurveLib) on each swap. Uses beforeSwapReturnsDelta to handle the full swap in beforeSwap. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapCustom-curve AMM hook backed by Euler Finance lending vaults. Processes swaps entirely in beforeSwap by depositing input tokens into and withdrawing output tokens from Euler vaults, verifying a custom bonding-curve invariant (CurveLib). Blocks native CLAMM liquidity provisioning and donations to prevent idle or irrecoverable positions. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom-curve AMM hook that routes swaps entirely through Euler protocol vaults. Each instance tracks its own reserves and bonding curve; beforeSwap takes input tokens into an Euler vault and withdraws output tokens from another, bypassing standard Uniswap v4 concentrated liquidity. Prevents native LP positions and donations via deliberate reverts. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA Uniswap v4 hook implementing a custom AMM curve backed by Euler Finance vaults. In beforeSwap, the hook takes custody of input tokens, deposits them into an Euler lending vault, withdraws output tokens from another Euler vault, and enforces a custom curve invariant — fully settling the swap within the hook via BeforeSwapDelta. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom-curve AMM hook backed by Euler Finance lending vaults. In beforeSwap, it computes quotes against its own bonding curve, takes input tokens into an Euler vault, withdraws output tokens from another Euler vault, verifies the curve invariant, and returns a full BeforeSwapDelta — entirely replacing the standard Uniswap v4 concentrated-liquidity math. Add-liquidity and donate are blocked by design. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapEulerSwap is a Uniswap v4 hook that implements a custom AMM curve backed by Euler Finance vaults. It handles all swaps entirely within beforeSwap, computing quotes via a custom curve invariant, depositing input tokens into and withdrawing output tokens from Euler vaults, and returning the full delta to the pool manager. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapCustom AMM hook backed by Euler lending vaults. In `beforeSwap`, the hook computes swap quotes using its own curve math, deposits input tokens into Euler vaults, withdraws output tokens from Euler vaults, and returns a `BeforeSwapDelta` to settle the full trade — bypassing Uniswap's concentrated liquidity entirely. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA custom-curve AMM hook that routes swaps through Euler Finance vaults. In beforeSwap, it computes amounts via a custom curve invariant, takes input tokens into an Euler vault, and pays output tokens from another Euler vault — returning a BeforeSwapDelta to bypass standard CLAMM pricing. Standard add-liquidity and donations are disabled to prevent unproductive positions. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo LimitOrderHookUniswap v4 hook that records the pre-swap tick in transient storage and triggers limit order execution via an external LimitOrderManager after each swap, filling orders whose price range was crossed. Supports role-gated dynamic LP fee updates via updateDynamicLPFee(). Arbitrum beforeSwapafterSwap 1 16mo EulerSwapA custom-curve AMM hook integrated with Euler lending vaults. All swap logic executes in beforeSwap: input tokens are deposited into an Euler vault, output tokens are withdrawn from another Euler vault, and a custom bonding curve invariant (CurveLib) is verified. Standard concentrated liquidity positions and donations are blocked by the hook. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapCustom-curve AMM hook backed by Euler Finance vaults. Intercepts all swaps in beforeSwap, computes amounts via a custom invariant curve, routes token flows through EVK vault deposits/withdrawals, and returns a BeforeSwapDelta to bypass standard Uniswap v4 CLAMM pricing. Blocks native liquidity additions and donations. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapA Uniswap v4 hook implementing a custom AMM using Euler lending vaults as liquidity sources. It fully handles swap execution in `beforeSwap` by depositing input tokens into and withdrawing output tokens from Euler vaults, verified against a custom price curve. Standard v4 liquidity positions are blocked; swaps bypass the CLAMM entirely. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1 16mo EulerSwapEulerSwap is a Uniswap v4 hook implementing a custom AMM curve backed by Euler lending vaults. On each swap, input tokens are deposited into an Euler vault and output tokens are withdrawn, with trades validated against a custom bonding curve invariant. Unichain beforeInitbeforeAddLiqbeforeSwapbeforeDonate+1 1