__ __ _ _ _____
| \/ | | | (_) / ____|
| \ / | __ _| |_ _ __ ___ _| (_____ ____ _ _ __
| |\/| |/ _` | __| '__| \ \/ /\___ \ \ /\ / / _` | '_ \
| | | | (_| | |_| | | |> < ____) \ V V / (_| | |_) |
|_| |_|\__,_|\__|_| |_/_/\_\_____/ \_/\_/ \__,_| .__/
| |
|_|
MatrixSwap is an concentrated liquidity AMM protocol that supports multiple fee tiers per pool, and limit range orders build on EMC Network
-
MatrixHub.sol
: Stores all states of liquidity pool and positions and handle all swaps and liquidity actions. -
periphery/Manager.sol
: Act as the interface for users to interact with MatrixHub. Manage user's positions and internal accounts. It's also an ERC-721 contract for position NFTs. -
libraries/Pools.sol
The library that contains all functionalities of a liquidity pool, including swap and mint/burn liquidity. Used by MatrixHub.sol to perform any pool-level actions.
- Clone this repository
git clone https://github.com/matrixswap/core-contracts.git
- Install Dependencies
npm install
- Compile and test
npx hardhat compile && npx hardhat test