HOOK PROG

Pools that run your program.

Read any Uniswap v4 hook from its address. Compose a pool's rules from tested blocks. Open the market with those rules frozen in.

Hook addressRobinhood Chain
v4 pools on chain
966,023
Every pool the PoolManager has initialized
Pools with a hook
329,788
34.1 % of all pools
Distinct hooks
25,092
Each one readable from its address
Rule blocks
5
Composable, frozen at pool open

Counted from the PoolManager's Initialize logs up to block 80,707,511. These are the chain's figures, not Hook Prog's own volume.

Rule blocks

Five blocks. Any combination.

Each block is a switch with its own parameters. Turn on what the market needs; everything else costs nothing.

Open the builder
The path of a swap

Every trade passes through your rules.

The hook runs before the pool prices the swap and again after it. What it takes is paid out in the quote currency, to four places and nowhere else.

Who it is for

One hook, six ways in.

Traders

Read the rules before the trade

Every permission a hook holds is in its address. Scan it and see what it can do to your swap before you sign.

Launchers

A token and its market in one transaction

Fixed supply, the whole of it in the pool, the band locked for good, and your own buy landing before anyone else's.

Creators

Paid in the quote, never in your own token

Every stream is taken in ETH or USDG, in all four swap directions. Nothing to dump to get paid.

Liquidity providers

Fees that follow the trade

The base fee is yours in full. Large trades pay more, and a slice of every swap can be donated straight to range.

Existing tokens

A hooked pool for an asset that already trades

Open a fresh v4 pool under your own rules. No mint, no position, no power over the token.

Integrators

One hook, one ABI

A single contract serves every pool. Rules are a struct you can read back, and rates are one view call.

Fee model

Who is paid, on every stream.

The trader pays exactly the rates the pool was opened with. The split below moves value between recipients; it never adds to the price.

Full arithmetic
StreamPaid byRecipientRecipientProtocol
Base LP feeevery swapIn-range LPs100 %0 %
Dynamic fee above baseswaps that move priceIn-range LPs80 %20 %
Launch Guard taxbuys in the opening windowCreator80 %20 %
Directional feebuys and sells, separate ratesCreator80 %20 %
LP Rewardsevery swapIn-range LPs80 %20 %
Nth-buy PotbuysThe Nth buyer80 %20 %
Founding position feeslaunches onlyCreator80 %20 %

At the default 20 % share. The share is frozen per pool when it opens and can never exceed 50 %. The protocol share goes to the treasury: no burn, no buyback, no staking.

$HOOKPROG

The Hook Prog token

Not launched yet. There is no contract address, and any token using this name today is not this one.

Root hook

Written, tested, not deployed

44 end-to-end checks pass against a real v4 PoolManager on a local chain: all four swap directions, the guard, the pot, and the hook's balance matching what it owes to the wei.

Pre-deployContract notes
Questions

Asked before you ask.

What is Hook Prog?

A root hook for Uniswap v4 on Robinhood Chain, with a builder on top. You compose a pool's rules from a small set of tested blocks, the pool freezes them when it opens, and the hook applies them on every swap. The same site reads any other hook on the chain from its address.

Can the rules of a pool change after it opens?

No. The rules are written once, when the pool is opened, and there is no function that edits them. The owner of the hook can change the default share for pools opened later, pause new openings and move the treasury address; none of that touches a live pool.

Where do the fees go?

The base LP fee goes to liquidity providers in full. Each opted-in block pays its own recipient: the creator, in-range LPs or the pot. The protocol keeps a share of each opted-in stream, 20 % by default and never above 50 %, frozen per pool. That share accrues to the protocol treasury and to nothing else: the contract has no burn, no buyback and no staking path.

Is the Nth-buy Pot random?

No. A public counter moves at most once per block and the buy that brings it to N takes the pot. Anyone can check the arithmetic on chain.

Does it work with the Uniswap router?

Yes. Every block works with empty hook data through any router. The pot pays the address named in the hook data, and falls back to the sender of the transaction when none is given.

Is the hook deployed?

Not yet. The contract is written and passes its end-to-end suite against a real v4 PoolManager on a local chain. Until it is deployed on Robinhood Chain the builder runs as a simulator and no page here claims a live market.

Hook Prog · Programmable hooks for Uniswap v4