Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/udaysingh131105/hardhat-defi-fcc
A DEFI application using Aave V3 protocol
https://github.com/udaysingh131105/hardhat-defi-fcc
aave-protocol aave-v3 blockchain daap daap-codes hardhat sepolia solidity
Last synced: 14 days ago
JSON representation
A DEFI application using Aave V3 protocol
- Host: GitHub
- URL: https://github.com/udaysingh131105/hardhat-defi-fcc
- Owner: UdaySingh131105
- Created: 2024-07-01T23:10:00.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-08-22T08:14:50.000Z (3 months ago)
- Last Synced: 2024-08-22T09:33:17.468Z (3 months ago)
- Topics: aave-protocol, aave-v3, blockchain, daap, daap-codes, hardhat, sepolia, solidity
- Language: JavaScript
- Homepage:
- Size: 148 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Aave Defi Project
*This repo has been revamped to work with Goerli. Due to AaveV2 not being deployed on Goerli, it may not work as intended. Please use a mainnet-fork or local network instead of a testnet.*
- [Hardhat DeFi](#hardhat-defi)
- [Getting Started](#getting-started)
- [Requirements](#requirements)
- [Quickstart](#quickstart)
- [Typescript](#typescript)
- [Optional Gitpod](#optional-gitpod)
- [Usage](#usage)
- [Testing](#testing)
- [Running on a testnet or mainnet](#running-on-a-testnet-or-mainnet)
- [Linting](#linting)
- [Formatting](#formatting)
- [Thank you!](#thank-you)# Getting Started
## Requirements
- [git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)
- You'll know you did it right if you can run `git --version` and you see a response like `git version x.x.x`
- [Nodejs](https://nodejs.org/en/)
- You'll know you've installed nodejs right if you can run:
- `node --version` and get an ouput like: `vx.x.x`
- [Yarn](https://classic.yarnpkg.com/lang/en/docs/install/) instead of `npm`
- You'll know you've installed yarn right if you can run:
- `yarn --version` and get an output like:`x.x.x`
- You might need to install it with npm## Quickstart
```
git clone https://github.com/UdaySingh131105/Hardhat-defi-fcc.git
cd hardhat-defi-fcc
yarn
```### Optional Gitpod
If you can't or don't want to run and install locally, you can work with this repo in Gitpod. If you do this, you can skip the `clone this repo` part.
[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#github.com/youngpriince/hardhat-defi-fcc)
# Usage
This repo requires a mainnet rpc provider, but don't worry! You won't need to spend any real money. We are going to be `forking` mainnet, and pretend as if we are interacting with mainnet contracts.
All you'll need, is to set a `MAINNET_RPC_URL` environment variable in a `.env` file that you create. You can get setup with one for free from [Infura(https://infura.io)
Run:
```
yarn hardhat run scripts/aaveBorrow.js
```## Testing
We didn't write any tests for this, sorry!
# Running on a testnet or mainnet
1. Setup environment variabltes
You'll want to set your `GOERLI_RPC_URL` and `PRIVATE_KEY` as environment variables. You can add them to a `.env` file, similar to what you see in `.env.example`.
- `PRIVATE_KEY`: The private key of your account (like from [metamask](https://metamask.io/)). **NOTE:** FOR DEVELOPMENT, PLEASE USE A KEY THAT DOESN'T HAVE ANY REAL FUNDS ASSOCIATED WITH IT.
- You can [learn how to export it here](https://metamask.zendesk.com/hc/en-us/articles/360015289632-How-to-Export-an-Account-Private-Key).
- `GOERLI_RPC_URL`: This is url of the goerli testnet node you're working with. You can get setup with one for free from [Alchemy](https://alchemy.com/?a=673c802981)2. Get testnet ETH
Head over to [faucets.chain.link](https://faucets.chain.link/) and get some tesnet ETH. You should see the ETH show up in your metamask.
3. Run
```
yarn hardhat run scripts/aaveBorrow.js --network goerli
```# Linting
To check linting / code formatting:
```
yarn lint
```
or, to fix:
```
yarn lint:fix
```## Formatting
```
yarn format
```# Thank you!