DODO V3 is a smart contract system composed of three parts, known as the Core, Periphery, and Lib contracts.
The Core contracts are the backbone of DODO V3 and are responsible for defining the functions of liquidity pools, determining the rules for pool creation, maintaining pools, and outlining the procedures for interacting with the assets within the pools.
The Periphery contracts interact with one or more of the Core contracts, but are not considered part of the Core. These contracts improve user safety and clarity by offering alternative methods of accessing the Core, and also provide necessary external data for this Core. Being separate from the Core contracts, they are upgradeable and replaceable, making the entire contract architecture low-coupled and flexible.
The Lib contracts serve as internal and external libraries that provide frequently used code logic for the Core contracts, helping to reduce the byte size of the Core contracts.