Every Uniswap v4 hook, live
Every hook attached to at least one Uniswap v4 pool, graded and explained in plain English, with the pools that use it.
AgeHookChainPermissionsPools
3mo
SaturnOmnichainV4HookA minimal Uniswap v4 hook for the Saturn Omnichain project with only afterInitialize enabled (no-op). Provides a permissionless initializePools() function that delegates to an external LiquidityBootstrapper contract and records the pool's initial tick.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain protocol that records the initial tick after pool initialization. It delegates liquidity bootstrapping to an external ISaturnOmnichainLiquidityBootstrapper contract and has no swap-time logic.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project. Only the afterInitialize permission is set; the callback is a no-op returning the selector. Provides an initializePools() function that delegates liquidity bootstrapping to an external LiquidityBootstrapper contract and records the resulting initial tick.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookMinimal hook for the Saturn Omnichain protocol that only uses afterInitialize, which is a no-op returning the selector. An external initializePools() function calls a LiquidityBootstrapper contract to set the initial tick and mark the pool as initialized. No swap, liquidity, or donate logic is modified.
Robinhood
afterInit
10
3mo
SnipeGuardHookApplies a punitive dynamic swap fee at pool launch that decays linearly from 50% to 1% over 180 seconds, discouraging sniper bots from buying in the first blocks after a pool is created.
Robinhood
afterInitbeforeSwap
10
3mo
SaturnOmnichainV4HookA minimal Uniswap v4 hook for the Saturn Omnichain project with only the afterInitialize flag set. All hook callbacks are no-ops that return their selectors. The contract also exposes an `initializePools()` function that calls a liquidity bootstrapper to record an initial tick, but this is not part of the hook callback logic.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project that registers afterInitialize but performs no action in that callback. Provides an external initializePools() function that calls an external liquidity bootstrapper and records the returned initial tick. Has no swap, liquidity, or donate logic.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Saturn Omnichain hook that registers the afterInitialize permission but performs no action in that callback. Separately exposes an `initializePools()` function (callable by anyone) that invokes a LiquidityBootstrapper to record the initial tick and mark the pool as initialized. Swaps execute identically to a standard Uniswap v4 pool.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Saturn Omnichain hook that enables only afterInitialize (which is a pure no-op). Pool setup is handled externally via initializePools(), which calls a bootstrapper contract to record the initial tick. No logic executes at swap or liquidity time.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain protocol that records the initial tick after pool initialization via an external liquidity bootstrapper contract. All hook callbacks (swap, liquidity, donate) are no-op stubs that simply return their selectors.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookUniswap v4 hook for the Saturn Omnichain project that activates only on pool initialization (afterInitialize). It delegates liquidity bootstrapping to an external ISaturnOmnichainLiquidityBootstrapper contract and records the initial tick. No swap or liquidity modification logic is active.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project with only the afterInitialize flag active (implemented as a no-op). Includes a separate initializePools() function that delegates to an external LiquidityBootstrapper to record the initial tick. Swap behavior is entirely vanilla.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA minimal Uniswap v4 hook for the Saturn Omnichain project that registers an afterInitialize callback (no-op) and provides an `initializePools()` function for bootstrapping initial liquidity and recording the pool tick via an external liquidity bootstrapper contract.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookMinimal Uniswap v4 hook for the Saturn Omnichain protocol. Only implements the afterInitialize flag (as a no-op callback). Pool initialization and initial tick recording are handled externally via `initializePools()`, which calls an external `ISaturnOmnichainLiquidityBootstrapper` contract.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA minimal Uniswap v4 hook for the Saturn Omnichain project that enables the afterInitialize permission (as a no-op callback), with pool bootstrapping performed via a separate initializePools() function that calls a dedicated ISaturnOmnichainLiquidityBootstrapper to record the initial pool tick.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for Saturn Omnichain that enables only the afterInitialize callback (a no-op returning only the selector) and exposes an initializePools() function that delegates liquidity bootstrapping to a separate contract and records the initial tick. All swap, liquidity, and donate callbacks are no-ops.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookUniswap v4 hook for the Saturn Omnichain project that only uses afterInitialize. All swap and liquidity callbacks are no-ops. On pool initialization, it delegates to an external LiquidityBootstrapper to bootstrap liquidity and records the initial tick.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA minimal Uniswap v4 hook for the Saturn Omnichain project that implements only afterInitialize (returning the selector as a no-op). All swap, liquidity, and donate callbacks are pure stubs. Pool initialization is managed externally via a LiquidityBootstrapper contract called through initializePools().
Robinhood
afterInit
10
3mo
Rivers LaunchHookSingleton Uniswap v4 hook for Rivers protocol launch pools, managing a pre/post-graduation lifecycle. During pre-launch phases, liquidity and swaps are restricted to the pool controller. After graduation, public swaps are enabled with protocol and creator fees taken as BeforeSwapDelta/AfterSwapDelta values and a dynamic LP fee override returned from beforeSwap.
Robinhood
beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3
10
3mo
BagsV4HookA shared Uniswap v4 hook for Bags platform pools that enforces full-range, permanently locked liquidity, overrides LP fees to 0, and charges a 2% fee on the WETH leg of every swap, split 50/50 between the Bags vault and a per-pool creator fee share recipient.
Robinhood
beforeInitbeforeAddLiqafterAddLiqbeforeRemoveLiq+4
10
3mo
BasedBidHookRuns code on every swap · Can take tokens from swaps · Sets its own swap fee · Runs at pool creation
Robinhood
afterInitbeforeSwapafterSwapswapDelta+1
10
2d
BlackSwanHookRuns code on every swap · Sets its own swap fee · Runs at pool creation
Robinhood
beforeInitbeforeSwapafterSwap
9
10d
HookManagerRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Robinhood
beforeInitafterInitbeforeSwapafterSwap+2
9
12d
FullRangeGates who can add liquidity · Runs at pool creation
Robinhood
beforeInitbeforeAddLiq
9
17d
0x9585…c880Runs code on every swap · Sets its own swap fee · Gates who can add liquidity
Robinhood
beforeAddLiqbeforeSwap
9
25d
StaticsSwapFeeHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation · Handles donations to LPs
Robinhood
afterInitbeforeSwapafterSwapbeforeDonate+2
9
28d
LaunchpadFeeHookV3Runs code on every swap · Can take tokens from swaps · Runs at pool creation
Robinhood
beforeInitbeforeSwapafterSwapswapDelta+1
9
28d
BorroHookRuns code on every swap · Can take tokens from swaps · Sets its own swap fee · Gates who can add liquidity · Runs at pool creation
Robinhood
beforeInitbeforeAddLiqbeforeSwapswapDelta
9
36d
0xc902…20c4Runs code on every swap · Can take tokens from swaps · Sets its own swap fee · Runs at pool creation
Robinhood
beforeInitbeforeSwapafterSwapafterSwapDelta
9
38d
LaunchHookV12Runs code on every swap · Runs at pool creation
Robinhood
beforeInitafterInitbeforeSwapafterSwap
9
40d
LaunchHookV12Runs code on every swap · Runs at pool creation
Robinhood
beforeInitafterInitbeforeSwapafterSwap
9
45d
StreetHookRuns code on every swap · Can take tokens from swaps
Robinhood
beforeSwapafterSwapswapDeltaafterSwapDelta
9
45d
LauncherpadFeeHookRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Robinhood
beforeInitbeforeSwapafterSwapswapDelta+1
9
45d
BlissHookRuns code on every swap · Sets its own swap fee · Runs at pool creation
Robinhood
beforeInitbeforeSwap
9
45d
0x84ab…e0ccRuns code on every swap · Can take tokens from swaps · Runs at pool creation
Robinhood
beforeInitbeforeSwapafterSwapswapDelta+1
9
46d
0x5afd…90c4Runs code on every swap · Can take tokens from swaps · Runs at pool creation
Robinhood
afterInitbeforeSwapafterSwapafterSwapDelta
9
48d
0x2437…c0ccRuns code on every swap · Can take tokens from swaps
Robinhood
beforeSwapafterSwapswapDeltaafterSwapDelta
9
51d
StonkHookV4A token launchpad hook for Robinhood Chain that gates swaps to an ERC-20-enforced trading window (NYSE hours), applies dynamic fees with an anti-snipe surcharge that decays over three seconds post-launch, and withholds asset-leg fees as ERC-6909 claims split among liquidity, creator, protocol, and treasury. Liquidity removals are permanently blocked; the liquidity fee share is placed as one-sided resting bids below spot, funding a perpetual price floor.
Robinhood
afterInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+3
9
51d
0x4949…80c4Runs code on every swap · Can take tokens from swaps · Sets its own swap fee
Robinhood
beforeSwapafterSwapafterSwapDelta
9
51d
0x58f5…8080Runs code on every swap · Sets its own swap fee
Robinhood
beforeSwap
9
52d
MarketHookA prediction market hook that gates all pool operations through a designated router contract. Swaps and liquidity additions require trading to be open (via IMarketHookRouter.isTradingOpen()), fees must remain at zero, and donations are permanently disabled.
Robinhood
beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+1
9
53d
UnihoodStockHookRuns code on every swap · Can take tokens from swaps · Gates who can add liquidity · Runs at pool creation
Robinhood
beforeInitbeforeAddLiqbeforeSwapafterSwap+2
9
53d
0x9954…1080Runs code on every swap · Sets its own swap fee · Runs at pool creation
Robinhood
afterInitbeforeSwap
9
54d
ForgeHookV4Token launch hook that collects configurable buy/sell fees (via swap deltas) on launchManager-registered pools, distributing proceeds among platform, creator, rewards, and utility recipients. Enforces a single liquidity position per pool and permanently disables liquidity removal.
Robinhood
beforeInitbeforeAddLiqbeforeRemoveLiqbeforeSwap+4
9
55d
0x772d…6044Runs code on every swap · Can take tokens from swaps · Runs at pool creation
Robinhood
beforeInitafterSwapafterSwapDelta
9
55d
0x8561…45c7Runs code on every swap · Can take tokens from swaps · Takes a cut when LPs withdraw · Adjusts deposit amounts
Robinhood
afterAddLiqafterRemoveLiqbeforeSwapafterSwap+3
9
57d
0xc732…3accRuns code on every swap · Can take tokens from swaps · Sets its own swap fee · Can block LP withdrawals · Gates who can add liquidity · Runs at pool creation
Robinhood
beforeInitafterInitbeforeAddLiqbeforeRemoveLiq+4
9
59d
0x9a8a…4880Runs code on every swap · Sets its own swap fee · Gates who can add liquidity
Robinhood
beforeAddLiqbeforeSwap
9
59d
DynamicFeeHookV4Sets its own swap fee · Runs at pool creation
Robinhood
afterInit
9
2mo
0x990b…0088Runs code on every swap · Can take tokens from swaps
Robinhood
beforeSwapswapDelta
9