Web3-CrowdFunding-MarketPlace Tailwind Templates

Web3 Crowdfunding Marketplace

CrowdFunding DApp A decentralized crowdfunding platform on Ethereum, enabling users to create and donate to campaigns. Built with Smart Contracts, Next.js, and Tailwind CSS. Perfect for learning blockchain development and deploying your first DApp!

Certainly! Below is a sample README.md file for your project based on the information provided. This README includes details about setting up the project, deploying the smart contract, and connecting the frontend with MetaMask and Hardhat.

Crowdfunding DApp

This project is a decentralized application (DApp) for crowdfunding campaigns. It allows users to create campaigns, contribute to them, and manage funds through smart contracts deployed on a local Ethereum network using Hardhat.

Features

  • Create new crowdfunding campaigns.
  • Contribute to existing campaigns.
  • View campaign details and contributions.

Technologies Used

  • Solidity: For writing smart contracts.
  • Hardhat: For local Ethereum network and contract deployment.
  • ethers.js: For interacting with the Ethereum blockchain.
  • Next.js: For the frontend interface.
  • MetaMask: For wallet integration and transaction signing.

Prerequisites

  • Node.js and npm installed.
  • MetaMask browser extension.
  • Basic understanding of Ethereum and smart contracts.

Setup Instructions

1. Clone the Repository

git clone https://github.com/yourusername/crowdfunding-dapp.git
cd crowdfunding-dapp

2. Install Dependencies

npm install

3. Start Hardhat Network

Start a local Ethereum node using Hardhat:

npx hardhat node

This will start a local network on http://localhost:8545 with pre-funded accounts.

4. Deploy Smart Contract

Deploy the smart contract to the Hardhat network:

npx hardhat run scripts/deploy.js --network localhost

Take note of the contract address printed in the console and update it in your frontend configuration.

5. Configure MetaMask

  1. Open MetaMask and click on the network dropdown.
  2. Select "Add Network" or "Custom RPC".
  3. Enter the following details:
    • Network Name: Hardhat
    • New RPC URL: http://localhost:8545
    • Chain ID: 31337
    • Currency Symbol: ETH
    • Block Explorer URL: (Leave blank)
  4. Save the network and switch to it.

6. Update Frontend Configuration

Ensure your frontend is pointing to the Hardhat network by setting the provider URL to http://localhost:8545. Update the contract address in your frontend code (e.g., constants.js).

Example:

const provider = new ethers.JsonRpcProvider("http://localhost:8545");

7. Run the Frontend

Start the frontend development server:

npm start

Open your browser and navigate to http://localhost:3000 to interact with the DApp.

Project Structure

  • contracts/: Contains the Solidity smart contract code.
  • scripts/: Contains deployment scripts.
  • src/: Contains the frontend React application.
  • hardhat.config.js: Hardhat configuration file.

Contributing

Contributions are welcome! Please fork the repository and create a pull request with your changes.

License

This project is licensed under the MIT License. See the LICENSE file for details.


This README provides a comprehensive guide for setting up and running your crowdfunding DApp. Adjust the details as necessary to fit your specific project structure and requirements.

Top categories

Loading Svelte Themes