βββ aave-acl // Access control list Package
βββ aave-config // Configurator Package
βββ aave-data // Data & Deployment Configurations
βββ aave-large-packages // Large Packages Package
βββ aave-math // Math library Package
βββ aave-mock-underlyings // Mock Underlyings Package
βββ aave-oracle // Oracle Package
βββ aave-core // Core Package
flowchart TD
%% Level 1
aave-config
chainlink-data-feeds
aave-large-packages
aave-mock-underlyings
%% Level 2
aave-acl --> aave-config
aave-math --> aave-config
%% Level 3
aave-oracle --> aave-config
aave-oracle --> aave-acl
aave-oracle --> chainlink-data-feeds
%% Level 4
aave-pool --> aave-acl
aave-pool --> aave-config
aave-pool --> aave-math
aave-pool --> aave-oracle
%% Level 5
aave-data --> aave-acl
aave-data --> aave-config
aave-data --> aave-oracle
aave-data --> aave-data
aave-data --> aave-pool
git clone https://github.com/aave/aptos-aave-v3.git && cd aptos-aave-v3Make sure the following tools are installed:
Start by copying .env.template to .env and editing any relevant values.
make local-testnetmake local-testnet-with-indexermake set-workspace-config \
&& make init-workspace-config \
&& make init-profiles \
&& make init-test-profiles \
&& make fund-profiles \
&& make fund-test-profilesThis will initialize, configure, and fund local accounts with APT.
make compile-all
make publish-allhttps://explorer.aptoslabs.com/?network=local
aave-test-kit is a local simulation environment for Aave on Aptos, inspired by Tenderly.
β‘οΈ See the linked README for Docker-based setup and usage.
These do not require a local testnet.
make test-allThese must be run after successful contract deployment:
make ts-testGenerate full module documentation across all packages:
make doc-allDocs will be generated under each package's doc/ directory.
A TypeScript SDK is available for interacting with the Aave V3 Protocol on Aptos directly from your applications.
pnpm add @aave/aave-v3-aptos-ts-sdk
# or
npm install @aave/aave-v3-aptos-ts-sdkπ View on npm Browse available functions, types, and usage examples.
π For full usage details, please refer to the README documentation on the npm package page.
All audit reports related to Aave's Move implementation on Aptos are stored in the /audits directory at the root of this repository.
/audits
βββ Certora Aave Aptos Core V3.0.2 Report.pdf
βββ Certora Aave Aptos Core V3.1-V3.3 Report.pdf
βββ Certora Aave Aptos Periphery V3.0.2 Report.pdf
βββ Ottersec Aave Aptos V3.1-V3.3 Report.pdf
βββ Spearbit Aave Aptos Core V3.0.2 Report.pdf
βββ Spearbit Aave Aptos Core V3.1-V3.3 Report.pdf
βββ Spearbit Aave Aptos Periphery V3.0.2 Report.pdfπ Browse Audit Reports
Official documentation for Aave's Move-based smart contracts is now available via GitHub Pages.
The docs are auto-generated from each package and published using MkDocs Material, with clean navigation and search.
π View Smart Contract Documentation Browse all modules, structs, functions, and events used across Aave's V3 Aptos packages.
In addition to Move unit tests and integration tests, this repository contains example scripts (such as flashloans) that demonstrate how to interact with the deployed protocol on Aptos. They are all located under the ./examples packages at root level.
Example are compiled separately via calling the main commands listed under ./examples/Makefile:
# For testnet
make compile-scripts-testnet
# For mainnet
make compile-scripts-mainnetOnce compiled, scripts can be executed against the target network compiled above. For example:
# Simple flashloan example
make execute-flashloan-simple
# Complex flashloan example
make execute-flashloan-complexEach script corresponds to a .mv compiled Move script under ./examples/build/AaveScripts/bytecode_scripts/. They are executed via aptos move run-script, with arguments such as asset addresses and flashloan amounts passed in from the Makefile.
π These scripts are primarily intended as examples and tests of protocol functionality, such as taking and repaying flashloans.