Code Monkey home page Code Monkey logo

certificate-dapp's Introduction

Paribu Hub - Smart Contract & Solidity Practicum Final Case

Certificate dApp

I started my final case project with this project (https://github.com/ahmetenesdur/confesster-dapp) and it has evolved into the project you are currently reviewing. If you wish, you can also review this project.

The certificate project allows users to create a certificate that is linked to their Ethereum address and can be used to prove ownership of a digital asset. The project also provides a platform for users to view and manage their certificates, as well as view the transactions that have taken place on the network. Additionally, users can buy coffee for each other using the certificates, which is an innovative way of incentivizing people to use the network.

The project is built using the following technologies:

NextJS, ChakraUI, Solidity, Hardhat, Ether.js, Alchemy API, IPFS - Web3 Storage, The Graph, Etherscan and Goerli Testnet.

To see the project in action, visit the following link:

vercel

To better understand watch my presentation on loom:

loom

Getting Started

To get this application up and and running on your local machine follow these simple steps.

Prerequisites

You need to have Node.js, NPM and hardhat installed on your computer, before running this project.

Wallet Connect Modals : https://docs.walletconnect.com/2.0/web3modal/about or https://www.rainbowkit.com/docs/introduction

Ethereum React Hooks : https://wagmi.sh/react/getting-started

Installation

  1. Clone the repo

    git clone https://github.com/ahmetenesdur/certificate-dapp.git
  2. Install NPM packages

    npm install

    or

    yarn install
  3. Create an .env.local file looking like this

    NEXT_PUBLIC_WALLET_CONNECT_PROJECT_ID=""
    RPC_URL=""
    METAMASK_PRIVATE_KEY=""
    ETHERSCAN_API_KEY=""
    NEXT_PUBLIC_WEB3_STORAGE_TOKEN=""
  4. Compile the smart contract (I explained the contract in detail with comment lines, first check it out.)

    npx hardhat compile
  5. Deploy the smart contract (Examine the comment lines in the scripts.)

    npx hardhat run scripts/deploy.js --network goerli
  6. Verify the smart contract (Optional)

    npx hardhat run scripts/verify.js --network goerli
  7. Deploy subgraph to The Graph

    Guide to deploy subgraph: https://thegraph.com/docs/en/cookbook/quick-start/

  8. Get subgraph query endpoint after deployment and update it in apollo-client.js

    Guide to get subgraph query endpoint: https://thegraph.com/docs/en/querying/querying-from-an-application/

  9. Run the app

    npm run dev

    or

    yarn dev
  10. Open the app in your browser

     http://localhost:3000
    

Usage

  1. Connect your wallet to the app
  2. Create a certificate
  3. View your certificates
  4. View transactions
  5. Buy coffee for someone

Screenshots

dApp Screenshot1 dApp Screenshot2

License

Distributed under the MIT License. See LICENSE for more information.

Contact

linkedin github

certificate-dapp's People

Contributors

ahmetenesdur avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.