This project is a simple implementation of an Automated Market Maker (AMM) based on the constant product formula (x * y = k), famously used by Uniswap V2. It's built with Solidity and designed for educational purposes to demonstrate the core mechanics of a decentralized exchange.
- Add Liquidity: Users can deposit a pair of ERC20 tokens to become liquidity providers and receive LP tokens in return.
- Remove Liquidity: Liquidity providers can burn their LP tokens to withdraw their proportional share of the underlying tokens.
- Swap Tokens: Users can swap one ERC20 token for another, with the price determined by the ratio of reserves in the pool.
- Solidity: Smart contract language
- OpenZeppelin Contracts: For robust and secure ERC20 implementation and security utilities (
ReentrancyGuard). - Remix IDE: Used for development, testing, and deployment.