aalmada / honest-nft

An implementation of an ERC721 featuring contract-based fairness and trust mechanisms.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Honest NFT

Note: This project is still under active development, and not all features are implemented. Expect frequent updates and changes.

Honest NFT is an Ethereum-based project that combines an ERC721 smart contract with a React front end to create a decentralized application (DApp) for minting Non-Fungible Tokens (NFTs). Let's break down the components:

  1. Smart Contract

    • The ERC721 standard ensures that each NFT is unique and indivisible.
    • Trust is established through code, making it transparent and tamper-proof.
    • Users can mint new NFTs, and the contract enforces their authenticity.
    • Developed using:
  2. Front End

    • The front end provides a user-friendly interface for interacting with Honest NFT.
    • Key features include:
      • Minting NFTs: Users can create their own NFTs.
      • Backoffice UI: An administrative interface for managing the NFT drop.
    • Developed using:

Getting Started

  1. Clone the Repository:

    git clone https://github.com/aalmada/honest-nft.git
    cd honest-nft
  2. Install Dependencies:

    • The repository is set up as a monorepo managed using pnpm, a fast, disk space efficient package manager.

    • Execute the following to install dependencies:

      pnpm install
  3. Deploy the Smart Contract:

    • The smart contract development project is in folder packages/blockchain.

    • Set the following configuration variables:

    • Compile and deploy the smart contract:

      cd packages/blockchain
      pnpm compile
      pnpm hardhat run scripts/deploy.js --network sepolia
  4. Start the React Development Server:

    • The frontend development project is in folder packages/frontend.

    • Add a .env.local file into the project folder. Copy the contents from the .env.example file.

    • Execute the following to start the React server:

      cd packages/frontend
      pnpm start

Usage

  • Visit the front end in your browser (usually at http://localhost:3000) and connect your Ethereum wallet (e.g., MetaMask).
  • Mint new NFTs or explore the marketplace.

Contributing

Contributions are welcome! Please create a pull request with your changes.

License

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

About

An implementation of an ERC721 featuring contract-based fairness and trust mechanisms.

License:MIT License


Languages

Language:TypeScript 57.6%Language:Solidity 32.5%Language:CSS 5.6%Language:JavaScript 3.2%Language:HTML 1.1%