DEV Community

Cover image for Smart Contract de una colección de NFTs
Ahmed Castro
Ahmed Castro

Posted on

Smart Contract de una colección de NFTs

Aquí un smart contract básico de colección de NFTs ERC-721. En este video lo lanzamos en un Testnet, subimos la metadata e imágenes a Github y vemos el resultado en OpenSea.


// contracts/GameItem.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.7;

import "@openzeppelin/contracts/token/ERC721/ERC721.sol";

contract MyNFT is ERC721 {
    uint256 public MAX_TOKEN = 5;
    uint256 public PRICE = 0.01 ether;
    address public CREATOR = 0x0000000000000000000000000000000000000000;
    uint256 public token_count;

    constructor() ERC721("My NFT", "MNFT") {}

    function _baseURI() internal view virtual override returns (string memory) {
        return "MIURL";
    }

    function mintNFT(address to) public payable
    {
        require(token_count < MAX_TOKEN, "Sold out");
        require(msg.value >= PRICE, "Must pay price");
        _mint(to, token_count);
        token_count  += 1;
    }

    function withdrawAll() public
    {
        (bool success, ) = CREATOR.call{value:address(this).balance}("");
        require(success, "Transfer failed.");
    }
}
Enter fullscreen mode Exit fullscreen mode

Gracias por ver este tutorial!

Sígueme en dev.to y en Youtube para todo lo relacionado al desarrollo en Blockchain en Español.

Latest comments (3)

Collapse
 
autoart32 profile image
autoart

Hola cómo puedo comunicarme contigo

Collapse
 
turupawn profile image
Ahmed Castro

Hola, recién inicié un server de discord. En el server te puedes comunicar conmigo y el resto de la comunidad discord.gg/zavBA7C3

Collapse
 
sipcom01 profile image
Jose Carlos Cabrera Monroy

Esta vencida la invitacion de discord