> ## Documentation Index
> Fetch the complete documentation index at: https://voltaire.tevm.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Aave V3

> Lending, borrowing, and flash loans with Aave V3

<Warning>
  **Looking for Contributors!** This Skill needs an implementation.

  Contributing a Skill involves:

  1. Writing a reference implementation with full functionality
  2. Adding comprehensive tests
  3. Writing documentation with usage examples

  See the [ethers-provider Skill](https://github.com/evmts/voltaire/tree/main/examples/ethers-provider) for an example of a complete Skill implementation.

  Interested? Open an issue or PR at [github.com/evmts/voltaire](https://github.com/evmts/voltaire).
</Warning>

<Info>
  **Skill** — Copyable reference implementation. Use as-is or customize. See [Skills Philosophy](/concepts/skills).
</Info>

Interact with Aave V3 for lending, borrowing, and flash loans across multiple chains.

## Planned Implementation

### Supply & Borrow

```typescript theme={null}
import { AaveV3 } from './AaveV3.js';

const aave = AaveV3({
  provider,
  pool: AAVE_POOL_ADDRESS,
});

// Supply collateral
await aave.supply({
  asset: USDC,
  amount: parseUnits('1000', 6),
  onBehalfOf: userAddress,
  signer,
});

// Borrow
await aave.borrow({
  asset: WETH,
  amount: parseEther('0.5'),
  interestRateMode: 2, // Variable
  onBehalfOf: userAddress,
  signer,
});
```

### Flash Loans

```typescript theme={null}
// Execute flash loan
await aave.flashLoan({
  receiverAddress: MY_CONTRACT,
  assets: [USDC, DAI],
  amounts: [parseUnits('100000', 6), parseUnits('100000', 18)],
  modes: [0, 0], // 0 = no debt, 1 = stable, 2 = variable
  params: encodedCalldata,
  signer,
});
```

### User Position

```typescript theme={null}
// Get user account data
const position = await aave.getUserAccountData(userAddress);
console.log('Total collateral:', position.totalCollateralBase);
console.log('Total debt:', position.totalDebtBase);
console.log('Health factor:', position.healthFactor);
```

## Resources

* [Aave V3 Documentation](https://docs.aave.com/)
* [Aave V3 Core](https://github.com/aave/aave-v3-core)

## Related

* [ethers-provider](/skills/ethers-provider) — RPC connection
* [multicall](/skills/multicall) — Batch reserve queries
