Decentralized exchange with concentrated liquidity and low gas fees
Frontend available at
Use node version 16
Clone the repository. In the repository home directory run the following commands:
$ yarn install
$ npx hardhat compile
To verify that the code is functioning run:
$ npx hardhat test
To see example of liquidity mining in action:
$ npx hardhat test test_canto/TestLiquidityMining.js
To test complex pool logic:
$ npx hardhat test test_pool/<test-name>.js
$ forge test -vv --match-path test_other/test_foundry/*
Primary docs can be found at our Gitbook
Additional technical documentation can be found
- Repo Layout: Top-level overview of the Solidity source files in the project.
- Control Flow: Illustrated flow charts mapping the smart contract logic associated with common CrocSwap operations.
- Encoding Guide: Technical specification for clients outlining how to encode arguments to the CrocSwap contract methods that don't use standard Solidity args.
Users of the CrocSwap protocol should be aware of the implicit risks to the protocol design. Among other major risk sare
- Protocol Risk - Although carefully reviewed the protocol could have an implementation error that leads to loss of funds
- Governance Risk - CrocSwap governance has fairly extensive powers, and users should fully trust the entities holding governance roles.
- Token Risk - CrocSwap expects has fairly stringent conformance requirements to guarantee safe and defined behavior. Users interacting with pools on non-compliant or malicious tokens risk loss of funds.
- Upgrade Risk - CrocSwap allows for smart contract code upgrade. Any upgrade represents a risk to the entire protocol and users funds if implemented incorrectly. Users should monitor all proposed upgrades and trust the governance process for approving upgrade proposals.