8000 GitHub - ansh98/deploy-polygon: deploy-polygon · GitHub
[go: up one dir, main page]

Skip to content

ansh98/deploy-polygon

Repository files navigation

NFT Demo

This project creates a smart contract and then deploys it to Rinkeby public testnet and Polygon mainnet.
NFT's can then be minted by sending transaction to the deployed smart contract.

Find out the NFT on Opensea minted on Polygon mainnet:

https://opensea.io/assets/matic/0x488049efd0a92f71046a62fcf994c8f990a1b87d/1

Find the NFT's on Opensea testnet:

https://testnets.opensea.io/assets/0x1e9930Bc5f39dE0515BeC52612bc4510F7B236C0/1

https://testnets.opensea.io/assets/0xD6c24c9A49271bFe5a04B00363EB521a02768bA1/1

Screenshot 2021-09-05 at 8 44 23 PM

Follow the Youtube tutorial here:

MINT NFT TUTORIAL

Dependencies:

(Ganache UI is not required in case you want to work with ganache-cli)

Usage:

  1. Clone the repo and run npm install.
    git clone https://github.com/neha01/nft-demo.git && cd nft-demo && npm install

  2. Put image file that you want to convert into an NFT under assets folder.

  3. Create a account in Pinata (https://www.pinata.cloud/) and create an API Key.
    Click on top right profile picture -> API Keys -> New Key
    Note down The API Key and API Key Secret and update in .env file.

  4. Update the name of your image file in assets folder.
    Update filePath with your image filepath.
    Run node scripts/runScript command.
    This will call Pinata API's and will upload file to IPFS and a new file will be created in data folder ipfsHash.json and the Pinata response containing the ipfsHash will be populated in that file.

  5. Now create a metadata.json file with the details about your NFT. For Reference checkout data/metadata.json file . Update filePath with your metadata filepath. Again Run node scripts/runScript command. This will call Pinata API's and will upload metadata file to IPFS and the Pinata response containing the ipfsHash will be again populated in ipfsHash.json file.

  6. Install latest solidity version by running npm install solc and Dont forget to update this solidity version in truffle-config.

  7. Update Rinkeby test network details in truffle-config.js .
    Update your account mnemonic in .env file.
    Now run truffle console --network rinkeby to connect to Rinkeby Public test network.
    Run migrate command to deploy the contract on Rinkeby testnet.
    Run let art = await ArtCollectible.deployed().
    Run await art.claimItem('https://ipfs.io/ipfs/QmREBUVuoeX39eB9KiQjp25RFr2dhYF6zawpYXq1UPJXEz')
    Pass the correct metadata file IPFS address to claimItem.
    Run art.address to get contract address.

  8. Checkout your NFT on https://testnets.opensea.io/assets/contract_address/tokenId.
    You can also verify your metadata using on https://rinkeby-api.opensea.io/asset/contract_address/tokenId/validate
    eg: https://rinkeby-api.opensea.io/asset/0x1e9930Bc5f39dE0515BeC52612bc4510F7B236C0/1/validate

  9. To deploy your NFT on polygon mainnet
    Update MNEMONIC of your MATIC funded Metamask account in .env file.
    Run npx truffle migrate --network matic This will deploy your contract to polygon mainnet.
    Copy the deployed contract address and update it in .env file.
    Pass your metadata file tokenURI in cliamItem in mintNft.js.
    run node scripts/mintNft.js

  10. Checkout your NFT on https://opensea.io/assets/matic/contract_address/tokenId

Party!!🥳🥳

About

deploy-polygon

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

0