Contract Architecture
This document provides an overview of the core contracts and their relationships. Click on any contract to view its detailed documentation.
graph TB Core(("Core")) Interfaces(("Interfaces")) Libraries(("Libraries")) subgraph CoreList ["Core"] direction LR AtomWallet & BaseCurve BondingCurveRegistry & EthMultiVault LinearCurve & OffsetProgressiveCurve ProgressiveCurve end Core --> CoreList subgraph InterfacesList ["Interfaces"] direction LR IBaseCurve & IBondingCurveRegistry IEthMultiVault & IPermit2 end Interfaces --> InterfacesList subgraph LibrariesList ["Libraries"] direction LR Errors end Libraries --> LibrariesList %% Style definitions classDef default fill:#f4f4f4,stroke:#333,stroke-width:2px,font-size:24px,font-family:Arial,rounded:true,color:#000; classDef root fill:#6366f1,color:#fff,stroke:#4338ca,stroke-width:4px,font-size:32px,font-weight:bold,font-family:Arial,rx:40px; classDef category fill:none,stroke:none,color:#000,font-size:24px,font-weight:bold,font-family:Arial; %% Apply styles class Core,Interfaces,Libraries root; class CoreList,InterfacesList,LibrariesList category; %% Click actions click OffsetProgressiveCurve "OffsetProgressiveCurve.html" "OffsetProgressiveCurve documentation" click BondingCurveRegistry "BondingCurveRegistry.html" "BondingCurveRegistry documentation" click AtomWallet "AtomWallet.html" "AtomWallet documentation" click EthMultiVault "EthMultiVault.html" "EthMultiVault documentation" click LinearCurve "LinearCurve.html" "LinearCurve documentation" click ProgressiveCurve "ProgressiveCurve.html" "ProgressiveCurve documentation" click BaseCurve "BaseCurve.html" "BaseCurve documentation" click IBaseCurve "http://localhost:3000/src/interfaces/IBaseCurve.sol/interface.IBaseCurve.html" "IBaseCurve documentation" click IEthMultiVault "http://localhost:3000/src/interfaces/IEthMultiVault.sol/interface.IEthMultiVault.html" "IEthMultiVault documentation" click IPermit2 "http://localhost:3000/src/interfaces/IPermit2.sol/interface.IPermit2.html" "IPermit2 documentation" click IBondingCurveRegistry "http://localhost:3000/src/interfaces/IBondingCurveRegistry.sol/interface.IBondingCurveRegistry.html" "IBondingCurveRegistry documentation" click Errors "http://localhost:3000/src/libraries/Errors.sol/library.Errors.html" "Errors documentation"