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.
AgeHookChainPermissionsPools
3mo
LaunchFeeHookApplies a time-based anti-snipe fee to pools: 50% flat fee for the first 4 minutes after initialization, then a permanent 3.5% LP fee floor. Fees are immutable — no admin controls or setters exist.
Robinhood
afterInitbeforeSwap
10
3mo
BDeFiHookA Uniswap v4 hook that applies buy/sell taxes on swaps and fulfills pending fee obligations using TWAP-based pricing, routing collected fees to registered receivers (LP managers, leaderboard, genesis). Also maintains a truncated geometric oracle for pool observations.
Robinhood
beforeInitafterInitbeforeAddLiqbeforeRemoveLiq+4
10
3mo
SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain project that records pool initialization state via an external liquidity bootstrapper. Only afterInitialize is active, which is a no-op returning the selector with no additional logic.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project that uses afterInitialize to support pool setup via an external liquidity bootstrapper contract. It has no active swap, liquidity modification, or donation hooks.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain project that only implements the afterInitialize permission bit. All hook callbacks, including afterInitialize, are pure no-ops that return their respective selectors. Initial tick recording is handled by a separate initializePools() function that calls an external liquidity bootstrapper contract.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain protocol with only the afterInitialize permission set. The afterInitialize callback is a no-op. Liquidity bootstrapping and initial tick recording are performed by a separate initializePools() function that calls an external ISaturnOmnichainLiquidityBootstrapper. All swap, liquidity, and donate callbacks are pure no-ops.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA minimal hook that records the initial tick after pool initialization, delegating liquidity setup to an external bootstrapper contract. All swap, liquidity, and donate callbacks are no-ops.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project that registers the afterInitialize permission but performs no logic in the hook callback. A separate initializePools() function (callable by anyone) invokes an external bootstrapper contract to record the initial tick and set a poolInitialized flag.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookMinimal Uniswap v4 hook for the Saturn Omnichain project with only the afterInitialize permission set. The afterInitialize callback is a no-op. Provides an initializePools() function that calls an external LIQUIDITY_BOOTSTRAPPER contract to bootstrap initial liquidity positions and record the initial tick.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookUniswap v4 hook for the Saturn Omnichain protocol. Only afterInitialize is enabled (as a no-op selector return). Provides an initializePools() function that calls an external ISaturnOmnichainLiquidityBootstrapper to bootstrap liquidity and records the initial tick.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project that records pool initialization state. The afterInitialize callback is a no-op; actual initialization is handled externally via initializePools(), which calls a LiquidityBootstrapper contract to record an initial tick.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA minimal hook that delegates initial liquidity bootstrapping to an external ISaturnOmnichainLiquidityBootstrapper contract via initializePools(). Only the afterInitialize flag is set; all swap and liquidity callbacks are no-ops.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain project that records the initial pool tick after initialization via an external liquidity bootstrapper contract. All swap, liquidity, and donate callbacks are no-ops.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain protocol with only the afterInitialize flag set; the afterInitialize callback performs no action. A separate initializePools() function delegates liquidity bootstrapping to an external ISaturnOmnichainLiquidityBootstrapper contract and records the initial tick.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project that uses only the afterInitialize permission (as a no-op selector return) to satisfy hook address validation. Stores pool configuration constants and an initial tick, delegating liquidity bootstrapping to an external ISaturnOmnichainLiquidityBootstrapper contract.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA minimal hook with only the afterInitialize permission bit set; the afterInitialize callback is a no-op stub. The contract also exposes an initializePools() function that calls an external ISaturnOmnichainLiquidityBootstrapper to bootstrap liquidity and records the resulting tick. The hook does not affect swap or liquidity-modification execution in any way.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project that records the initial tick after pool initialization and delegates liquidity bootstrapping to an external LiquidityBootstrapper contract. No swap logic is implemented; all swap-related callbacks are no-ops.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for Saturn Omnichain with only the afterInitialize flag enabled, but the callback is a no-op. Liquidity bootstrapping is performed by a separate `initializePools()` function that calls an external `ISaturnOmnichainLiquidityBootstrapper` contract. All other hook callbacks are no-ops.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project with only afterInitialize permission enabled; the hook callback itself is a no-op, while a separate initializePools() function delegates to an external ISaturnOmnichainLiquidityBootstrapper contract to bootstrap liquidity and record the initial tick.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA minimal Uniswap v4 hook for the Saturn Omnichain project that records the initial tick after pool initialization. Delegates liquidity bootstrapping to a separate ISaturnOmnichainLiquidityBootstrapper contract via initializePools().
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project. All hook callbacks are pure no-ops that return their respective selectors. An external initializePools() function records the initial tick by delegating to a liquidity bootstrapper contract and sets a poolInitialized flag.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain protocol that captures the initial tick after pool initialization. Only the afterInitialize flag is active; the callback itself is a no-op returning only the selector. Pool seeding is handled externally via a LiquidityBootstrapper contract.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn Omnichain project with only the afterInitialize flag set. The afterInitialize callback is a no-op; pool liquidity setup is triggered externally via initializePools(), which calls a configurable ISaturnOmnichainLiquidityBootstrapper contract to bootstrap positions and record the initial tick.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA minimal Uniswap v4 hook for the Saturn Omnichain project that holds the `afterInitialize` permission but performs no action in that callback. Pool initialization and tick recording are managed externally via `initializePools()`, which delegates to an `ISaturnOmnichainLiquidityBootstrapper` contract. No swap or liquidity modification logic is present.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookHook for the Saturn Omnichain protocol that records the initial tick after pool initialization via an external LiquidityBootstrapper contract. Has no swap-time logic; afterInitialize is the only active permission.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA Uniswap v4 hook for the Saturn omnichain project that records the initial tick after pool initialization via an external ISaturnOmnichainLiquidityBootstrapper contract. Has no swap-time logic; afterInitialize is a no-op returning only its selector.
Robinhood
afterInit
10
3mo
SaturnOmnichainV4HookA minimal hook for the Saturn Omnichain project that registers afterInitialize to validate permissions. All swap and liquidity callbacks are no-ops. Pool initialization is handled externally via a liquidity bootstrapper contract that sets the initial tick.
Robinhood
afterInit
10
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
4mo
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
55d
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
56d
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
58d
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