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"