AAVE Source Code Analysis: Overall Code Architecture
AAVE Architecture Overview
AAVE is a lending protocol, so its core revolves around four major actions: deposit, borrow, repay, and liquidation. In my view, one major reason AAVE looks complex is the existence of stable-rate borrowing, which significantly increases the complexity of the interest-rate model. Without that feature, the overall design would be much easier to understand.
The high-level AAVE architecture looks like this: