This repository is the result of my exploration and attempt to learn about Uniswap v3 and its underlying mechanics. The main focus of this repository is to implement and understand the functionality of Uniswap v3's liquidity management using the Uniswap v3 periphery and core contracts.
Uniswap v3 introduces advanced features that offer enhanced capital efficiency and flexibility compared to its previous versions. Through the implementation of the Custodian contract, I aimed to achieve the following learning objectives:
-
Understanding Liquidity Management: Explore how liquidity is managed in Uniswap v3, including minting new positions, increasing liquidity, and decreasing liquidity.
-
Non-Fungible Liquidity Positions: Gain insight into the concept of non-fungible liquidity positions and their representation through ERC721 tokens.
-
Smart Contract Interactions: Learn how to interact with Uniswap v3's core and periphery contracts to perform various operations.
Through this contract, I attempted to provide a practical implementation that allows users to understand how to manage liquidity positions, collect fees, and perform other basic actions within the Uniswap v3 ecosystem.
Contributions to this repository are welcome. If you have any suggestions, improvements, or bug fixes, feel free to create a pull request.