Hooks are a powerful new feature in Uniswap v4. They are external smart contracts that can be attached to any pool, allowing developers more pool customization. Hooks have a variety of different use cases, for example, if some liquidity is out of the current price range and sitting idle, hooks can enable that liquidity to be deposited into another protocol to earn additional yield instead of going unused.