Giter Site home page Giter Site logo

nft-contract.sol's Introduction

NFT-Contract.sol

//Question - Write a Basic NFT conntract made by using Solidity, Remix IDE, and OpenZippelin //Answer - // SPDX-License-Identifier: MIT pragma solidity ^0.8.20;

import "@openzeppelin/contracts/token/ERC721/ERC721.sol"; // non fungible token , in contracts helps to minimize the risk . import "@openzeppelin/contracts/access/Ownable.sol";

contract BasicNFTContract is ERC721, Ownable { uint256 public minPrice = 0.05 ether; uint256 public totalSupply; uint256 public maxSupply; bool public isMintEnabled; mapping(address => uint256) public mintedWallets;

constructor() payable ERC721('Abhiyayo NFT', 'JET') {
    maxSupply = 2;
}

function toggleIsMintEnabled() external onlyOwner {
    toggleIsMintEnabled = !isMintEnabled;
}

function setMaxSupply(uint256 _maxsupply) external onlyOwner {
    maxSupply = _maxsupply;
}

function mint() external payable {
    require(isMintEnabled, 'Minting not enabled');
    require(msg.value == minPrice, 'Wrong Price');
    require(mintedWallets[msg.sender] < 1, 'exceed max per wallet');
    require(maxSupply > totalSupply, 'sold out');

    mintedWallets[msg.sender]++;
    totalSupply++;
    uint tokenID = totalSupply;
    _safeMint(msg.sender tokenID);
}

}

nft-contract.sol's People

Contributors

abhijeet-n-singh avatar

Watchers

 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.