Skip to content

Commit f99465c

Browse files
committed
initial commit
0 parents  commit f99465c

File tree

15 files changed

+237
-0
lines changed

15 files changed

+237
-0
lines changed

.DS_Store

8 KB
Binary file not shown.

.env.example

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
PRIVATE_KEY=

.gitignore

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# Compiler files
2+
cache/
3+
out/
4+
5+
# Ignores development broadcast logs
6+
!/broadcast
7+
/broadcast/*/31337/
8+
/broadcast/**/dry-run/
9+
10+
# Docs
11+
docs/
12+
13+
# Dotenv file
14+
.env

.gitmodules

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
2+
[submodule "lib/aave-v4"]
3+
path = lib/aave-v4
4+
url = https://github.com/aave/aave-v4
5+
[submodule "lib/forge-std"]
6+
path = lib/forge-std
7+
url = https://github.com/foundry-rs/forge-std

.prettierignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
out
2+
lib
3+
cache
4+
node_modules

.prettierrc

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{
2+
"overrides": [
3+
{
4+
"files": "*.sol",
5+
"options": {
6+
"printWidth": 80,
7+
"tabWidth": 2,
8+
"useTabs": false,
9+
"singleQuote": true,
10+
"bracketSpacing": false,
11+
"explicitTypes": "always"
12+
}
13+
}
14+
]
15+
}

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) Aave Labs
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
## Aave v4 Foundry Boilerplate
2+
3+
This repository contains a minimal boilerplate for developing smart contracts that integrate with Aave v4 using [Foundry](https://book.getfoundry.sh/).
4+
5+
## Table of Contents <!-- omit in toc -->
6+
7+
- [Requirements](#requirements)
8+
- [Initial Setup](#initial-setup)
9+
- [Usage](#usage)
10+
- [License](#license)
11+
12+
## Requirements
13+
14+
- Foundry
15+
16+
Install or update Foundry:
17+
18+
```bash
19+
curl -L https://foundry.paradigm.xyz | bash
20+
foundryup
21+
```
22+
23+
## Initial Setup
24+
25+
# Install dependencies
26+
27+
```bash
28+
forge install
29+
```
30+
31+
Create a `.env` file copying the `.env.example` file:
32+
33+
```bash
34+
cp .env.example .env
35+
```
36+
37+
Update the `.env` file with the correct values.
38+
39+
## Usage
40+
41+
### Build
42+
43+
```shell
44+
$ forge build
45+
```
46+
47+
### Test
48+
49+
```shell
50+
forge test
51+
```
52+
53+
### Deploy
54+
55+
```shell
56+
forge script script/Deploy_UserPositions.s.sol:DeployUserPositions \
57+
--sig "run(address)" <SPOKE_ADDRESS> \
58+
--rpc-url <RPC_URL> \
59+
--private-key <PRIVATE_KEY> \
60+
```
61+
62+
Need to add or update dependencies later? Run `forge install owner/repo` to pull them in and keep `foundry.lock` synchronized.
63+
64+
## License
65+
66+
Aave v4 Foundry Boilerplate [MIT licensed](./LICENSE)

foundry.lock

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"lib/aave-v4": {
3+
"tag": {
4+
"name": "v0.5.2",
5+
"rev": "14a824b258eb76b7a1ec86bd6cbe79da2539aed8"
6+
}
7+
},
8+
"lib/forge-std": {
9+
"tag": {
10+
"name": "v1.11.0",
11+
"rev": "8e40513d678f392f398620b3ef2b418648b33e89"
12+
}
13+
}
14+
}

foundry.toml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[profile.default]
2+
src = "src"
3+
out = "out"
4+
libs = ["lib"]
5+
solc_version = "0.8.28"
6+
7+
# See more config options https://github.com/foundry-rs/foundry/blob/master/crates/config/README.md#all-options

0 commit comments

Comments
 (0)