Skip to content

Anshul-NSUT41/Foundry-FundMe

Repository files navigation

🏦 Foundry FundMe

A decentralized crowdfunding smart contract built using Foundry.
Users can fund the contract with ETH, and only the contract owner can withdraw funds.
Chainlink price feeds are used to enforce a minimum USD contribution.


🛠 Tech Stack

  • Solidity
  • Foundry (Forge, Cast)
  • Chainlink Price Feeds
  • GitHub Actions (CI)

✨ Features

  • Accept ETH contributions
  • Enforces minimum USD funding amount
  • Tracks funders and contributions
  • Owner-only withdrawal
  • Chainlink oracle integration
  • Fully tested using Foundry

📁 Project Structure

.
├── src/
│   └── FundMe.sol
├── script/
│   └── DeployFundMe.s.sol
├── test/
│   └── FundMeTest.t.sol
├── lib/
│   └── chainlink/
├── .github/
│   └── workflows/
│       └── test.yml
├── foundry.toml
└── README.md

🚀 Getting Started

Prerequisites

  • Git
  • Foundry

Install Foundry

curl -L https://foundry.paradigm.xyz | bash
foundryup

Clone the repository

git clone git@github.com:Anshul-NSUT41/Foundry-FundMe.git
cd Foundry-FundMe

Install dependencies

forge install

📜 Smart Contract Overview FundMe.sol

Uses Chainlink price feeds

Maps funders to their funded amount

Restricts withdrawals to owner

🛡 Security Notes

Owner-only withdrawal

External oracle dependency

No upgradeability (by design)

📄 License

MIT License

👤 Author

Anshul Engineering @ NSUT Blockchain | Smart Contracts | Foundry

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published