An open API service indexing awesome lists of open source software.

https://github.com/sivaren/foundry-fund-me

Smart Contract for fund endowment using Foundry
https://github.com/sivaren/foundry-fund-me

blockchain foundry smart-contracts solidity zksync

Last synced: 3 months ago
JSON representation

Smart Contract for fund endowment using Foundry

Awesome Lists containing this project

README

        

# Foundry Fund Me

## Table of Contents
* [General Information](#general-information)
* [Requirements](#requirements)
* [Prerequisites](#prerequisites)
* [Program Usage](#program-usage)
* [Project Status](#project-status)

## General Information
> Smart Contract for fund endowment using Foundry.

## Requirements
* `Solidity`
* `Foundry`
* `Foundry-ZkSync`
* `Chainlink Data Feeds`
* `smartcontractkit/chainlink-brownie-contracts`
* `foundry-rs/forge-std`
* `cyfrin/foundry-devops`

## Prerequisites
> **Ensure that you're in the `main` branch**

**Clone this repository using the following command line (git bash)**
```
$ git clone https://github.com/sivaren/foundry-fund-me.git
```

## Program Usage
* Open `cmd` on this folder and install dependencies

```
forge install smartcontractkit/[email protected] --no-commit
forge install foundry-rs/[email protected] --no-commit
forge install cyfrin/[email protected] --no-commit
```
* Deploy `FundMe` contract on **Sepolia Test Network**
```
forge script script/DeployFundMe.s.sol:DeployFundMe --rpc-url --private-key --broadcast
```
* Run all **test** cases
```
forge test
```
* Run specific **test** case
```
forge test --mt
```
* Inspect **test coverage**
```
forge coverage
```
* Interact with `FundMe` contract | `fund()`
```
cast send "fund()" --value 0.01ether --private-key
```
* Interact with `FundMe` contract | `withdraw()`
```
cast send "withdraw()" --private-key
```

## Project Status
> **Project is: DONE**