Kõik, mida peate teadma NFT-de loomise kohta Velas
NFT-de loomine Velas võib anda meeskondadele mitmesuguseid eeliseid. Nende hulka kuuluvad Ethereumiga ühilduvate nutikate lepingute võimendamine, kiire tehingukiiruse nautimine, kõrgetest gaasitasudest vabastamine ja palju muud.
Sisu:
Sissejuhatus
NFT on revolutsiooniline tehnoloogia, mis võib kasutajatele mitmel viisil kasu tuua. Näiteks annab see kasutajatele tõendi nende digitaalsete varade omandiõiguse kohta nagu kunagi varem. Lisaks võivad NFT-d viia täiesti uue loojate majanduseni.
Kõigi NFT-de pakutavate hüvede tõttu räägivad kõik oma projektide NFT-dega volitamiseks. Kuid kas teate, kuidas arendada NFT-toega nutikaid lepinguid? Ärge muretsege, kui mitte, sest see artikkel juhendab teid Velas Testnetis NFT nutikate lepingute loomise kõigis etappides.
Pange tähele, et see õpetus näitab teile, kuidas luua kollektsiooni asemel üks-ühele NFT-d. Nii et see nutikas leping võimaldab kasutajatel vermida mis tahes oma fotosid või videoid NFT-na.
Miks Velas?
Seal on saadaval palju plokiahela protokolle. Kuid arendajatel on nende kasutamisel endiselt probleeme. Näiteks Ethereum võitleb kõrgete gaasitasude ja aeglase tehingute töötlemisega, samas kui teised plokiahelad nõuavad arendajatelt võõraste keelte, nagu Rust, kasutamist.
koos Velas, enamik neist muredest pole olemas. Velase lahendus pärib Solana tehnoloogia parima DNA ja täiendab seda lisafunktsioonidega, mis toetavad ühilduvust EVM. See annab kasutajatele ja arendajatele ideaalse platvormi, mis tagab suurepärase kasutajakogemuse kiirema tehinguajaga. Lisaks lihtsustab see Solidity toega arendusprotsessi.
Eeldused
Järgimiseks peaks teil olema paketihaldur Node plus Yarn. Samuti peaksid teil olema põhiteadmised Solidity kohta. Nii et kui te pole sellega tuttav, siis palun varustage end Solidity ja Hardhat kõigepealt.
Seade
Meie projekti seadistamiseks käivitage terminalis järgmine käsk.
npx hardhat
Kui teil pole Hardhati installitud, näete järgmist väljundit.
KASUTUSALA y ja kliki sisestama, ja see jätkab Hardhati installimisega. Kuid kui teil on Hardhat juba olemas, ei kuvata see teile Hardhati installimise viipa. Selle asemel esitab see mõned küsimused selle kohta, kuidas soovite projekti üles seada.
Soovime, et meie praeguses kaustas oleks põhiline Javascripti projekt, nii et klõpsake lihtsalt sisestama kõige jaoks.
Seejärel peame projekti jaoks oma sõltuvused installima. Nende installimiseks kasutame järgmist käsku.
npm install --save-dev "^2.10.1" "@nomicfoundation/^1.0.1" "@openzeppelin/contracts" "dotenv"
Kuna me kasutame lõnga, peame installima teegid, mida hardhat-toolbox kasutab.
yarn add --dev @nomicfoundation/hardhat-toolbox @nomicfoundation/hardhat-network-helpers @nomicfoundation/hardhat-chai-matchers @nomiclabs/hardhat-ethers @nomiclabs/hardhat-etherscan chai ethers hardhat-gas-reporter solidity-coverage @typechain/hardhat typechain @typechain/ethers-v5 @ethersproject/abi @ethersproject/providers
Kui kasutate npm versiooni 7 või uuemaid versioone, installitakse need teegid otse.
Väärib märkimist, et enne nutika lepingu kirjutamist peame tegema veel ühe sammu. See tähendab, et eemaldada kõik .sol failid, mida näete lepingute kaustas, ja looge uus fail nimega VELASNFT.sol. See on kaust, kuhu me oma lepingu kirjutame.
Kuidas kirjutada NFT nutilepingut
Ehitaja
Alustuseks loome barebone nutika lepingu, kus määratleme soliidsuse versiooni ja loome tühja nutika lepingu keha.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.9; contract VELASNFT { }
Peame importima nutika baaslepingu ja kommunaalteenuste nutika lepingu. Nimelt on need lepingud, mida kasutatakse meie NFT nutika lepingu koostamiseks. Põhileping on ERC721URISaldusruum, ERC721 juurutus koos salvestuspõhise loa URI haldusega.
Loendurid on kommunaalteenuste leping, mida kasutatakse vermitud NFT-de arvu loendamiseks.
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/utils/Counters.sol";
Meie leping pärib põhilepingu. See võimaldab kasutajatel pääseda juurde kõikidele põhilepingu ja meie nutikate lepingute funktsioonidele.
contract VELASNFT is ERC721URIStorage { }
Nüüd saame kirjutada oma lepingule ehitaja. Märkimisväärne on see, et meie konstruktoril ei ole argumente, kuid peate nime ja sümboli ERC721 konstruktorile edastama.
constructor() ERC721("VELASNFT", "VN") {}
Selle etapi lõpus peaks teie nutikas leping välja nägema selline.
//SPDX-License-Identifier: MIT
pragma solidity ^0.8.0; import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/utils/Counters.sol"; contract VELASNFT is ERC721URIStorage { constructor() ERC721("VELASNFT", "VN") {} }
Rahapaja funktsiooni kirjutamine
Rahapaja funktsiooni jaoks peame esmalt seadistama loenduri. Kleepige järgmine koodilõik lepingusse konstruktori kohale.
using Counters for Counters.Counter; Counters.Counter private _tokenIds;
omistame loenduri struktuurile kõik loendurite teegi funktsioonid. Seejärel loome privaatse muutuja nimega _tokenIds.
Nüüd hakkame funktsiooni arendama. See võtab ühe argumendi: tokenURI, ja see on json-faili URL, mis salvestab kõik metaandmed. Me käsitleme metaandmetega lähemalt järgmistes jaotistes. Rahapaja funktsioon on avalikult nähtav ja tagastab vermitud NFT ID, mille tüüp on uint256.
function mint(string memory tokenURI) public returns (uint256) { }
Funktsiooni sees saame esmalt loenduri praeguse loenduse.
NFT vermimiseks kasutame _mint funktsioon, mis võtab argumentidena aadressi ja ID. Aadressi jaoks kasutame helistaja aadressi ja ID on praegune arv. Pärast seda peame salvestama tokenURI.
Selleks peame _setTokenURI, mis salvestab võtmena vastava ID-ga URI. Lõpuks suurendame loendurit ja seejärel loodud NFT ID-d.
function mint(string memory tokenURI) public returns (uint256) { uint256 newItemId = _tokenIds.current(); _mint(minter, newItemId); _setTokenURI(newItemId, tokenURI); _tokenIds.increment(); return newItemId; }
Palju õnne! Nüüd saab teie nutikas leping luua NFT-sid! Siin on ülevaade kogu lepingust.
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.9; import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/utils/Counters.sol"; contract VELASNFT is ERC721URIStorage { using Counters for Counters.Counter; Counters.Counter private _tokenIds; constructor() ERC721("VELASNFT", "VN") {} function mint(string memory tokenURI) public returns (uint256) { uint256 newItemId = _tokenIds.current(); _mint(msg.sender, newItemId); _setTokenURI(newItemId, tokenURI); _tokenIds.increment(); return newItemId; }
}
Kuidas lepingut rakendada
Oleme koostanud oma NFT nutika lepingu. Siit tuleb põnev samm, juurutamine. Kuid enne lepingu juurutamist peame selle kompileerima ja kirjutama skripti, mis lepingu juurutab. Lepingu koostamiseks käivitage terminalis järgmine käsk.
npx hardhat compile
Näete järgmist väljundit.
Liigume nüüd järgmise etapi juurde, kirjutame selle nutika lepingu juurutamiseks skripti. Selleks läheme skriptide kausta ja avame faili deploy.js. Seejärel eemaldage kogu sisu ja kleepige sellesse faili järgmine väljavõte.
const hre = require("hardhat"); async function main () { // We get the contract to deploy const VELASNFT = await hre.ethers.getContractFactory('VELASNFT'); console.log("Deploying NFT contract..."); const velasnft = await VELASNFT.deploy(); await velasnft.deployed(); console.log('NFT contract deployed to:', velasnft.address); } main() .then(() => process.exit(0)) .catch(error => { console.error(error); process.exit(1);
});
Enne lepingu juurutamist peame faili hardhat.config.js lisama Velas testneti üksikasjad. Avage fail ja lisage Velas testneti konfiguratsioon.
require("@nomicfoundation/hardhat-toolbox");
const dotenv = require('dotenv');
dotenv.config(); /** @type import('hardhat/config').HardhatUserConfig */
module.exports = { solidity: "0.8.9", networks: { velastestnet: { url: `https://evmexplorer.testnet.velas.com/rpc`, accounts: [process.env.PRIVATE_KEY] } }
};
Tasub ka mainida, et enne lepingu juurutamist tuleb .env faili lisada oma rahakoti privaatvõtmed ja rahakotis olema mõni testnet VLX token. Testneti märgid saate aadressilt siin.
Nüüd, kui kõik asjad on seadistatud, käivitage terminalis järgmine käsk.
npx hardhat run scripts/deploy.js --network velastestnet
Kui käsk on edukalt täidetud, näete oma terminalis sarnast väljundit, nagu allpool näidatud.
Rahapaja NFT
Kui nutikas leping on kasutusele võetud, saame terminalist NFT-d vermida. Selleks käivitage esmalt hardhat konsool, kasutades järgmist käsku.
npx hardhat console --network velastestnet
Väljund on näidatud allpool.
Seejärel loome lepingumuutuja nimega "velasnft". saada ContractAt meetod tagastab lepingu objekti.
const velasnft = await ethers.getContractAt("VELASNFT", '0x587133187DEC8E1D5a964254B42FF3627a649313')
Vaadake allpool näidatud väljundit.
NFT vermimiseks kasutame rahapaja meetodit velasnft muutuv. Samuti peame meetodile edastama metaandmete lingi. Lisateavet metaandmete standardite kohta saate lugeda SIIN.
await velasnft.mint("https://metadatastorage.com/velasnft/0")
Vaadake allpool olevat väljundit.
Nüüd on aeg kontrollida NFT omanikku. Kuna me vermisime kasutades omanikOf meetodil, edastame nüüd meie vermitud NFT indeksi.
await velasnft.ownerOf(0)
Nii saamegi NFT omaniku tulemuse.
Järeldus
Artiklis oleme õppinud, kuidas kirjutada NFT-nutilepingut, mis võimaldab kasutajatel NFT-sid vermida. Lisaks on meil õnnestunud see Velas testnetis juurutada. Nüüd saate arendada uusi NFT-toega rakendusi ja uurida dünaamilist Velase ökosüsteemi.
Selle lingi kaudu saate vaadata ka seda, kuidas Velasel DAO-d luua.
Velas soovib anda neile, kes püüavad Web3 arengut kiirendada, volitada. Seetõttu on Velas selle missiooni täitmiseks käivitanud 100 miljoni dollari suuruse toetusprogrammi. Vahepeal on selle programmi eesmärk ka toetada Velase ökosüsteemi laienemist.
Velase stipendiumiprogrammiga, saavad arendajad oma põnevaid ideid tõhusamalt ellu viia. Igal projektil on võimalus saada kuni 100,000 XNUMX dollarit rahastust. Lisaks on valitud meeskondadel juurdepääs muudele ressurssidele, et edendada oma projektide arendamist, sealhulgas turundust, tehnilisi konsultante ja palju muud.
Toetusprogramm hõlmab paljusid kategooriaid, sealhulgas, kuid mitte ainult, DeFi, NFT, plokiahela toega mängud ja palju muud.
Kui olete huvitatud krüptovaluutade ja plokiahela massilise kasutuselevõtu kiirendamisest, Kandideeri kohe, et liituda Velase pidevalt areneva ökosüsteemiga.
Lisateavet Velase kohta:
Kaebused — See on sponsoreeritud artikkel. DappRadar ei toeta selle lehe sisu ega toodet. DappRadari eesmärk on pakkuda täpset teavet, kuid lugejad peaksid enne tegutsemist alati ise uurima. DappRadari artikleid ei saa pidada investeerimisnõuanneteks.
- SEO-põhise sisu ja PR-levi. Võimenduge juba täna.
- Platoblockchain. Web3 metaversiooni intelligentsus. Täiustatud teadmised. Juurdepääs siia.
- Allikas: https://dappradar.com/blog/how-to-create-nft-on-velas
- $ 100 miljonit
- 000
- 1
- 10
- 7
- 9
- a
- MEIST
- üle
- kiirendades
- juurdepääs
- Kontod
- täpne
- tegevus
- lisamine
- Täiendavad lisad
- aadress
- Vastuvõtmine
- nõuanne
- pärast
- Eesmärgid
- Materjal: BPA ja flataatide vaba plastik
- võimaldab
- juba
- alati
- ja
- rakendused
- argument
- argumendid
- artikkel
- kaubad
- vara
- saadaval
- ootama
- baas
- põhiline
- Alused
- sest
- enne
- on
- alla
- kasu
- Kasu
- BEST
- blockchain
- plokiahela jõul töötav
- plokiahelad
- keha
- tooma
- ehitama
- ehitatud
- kutsutud
- helistaja
- Saab
- kategooriad
- kontrollima
- kogumine
- ühilduvus
- kokkusobiv
- Murettekitav
- järeldus
- konfiguratsioon
- kaaluda
- konsool
- konsultandid
- sisu
- leping
- lepingud
- Vastav
- Võidelda
- loendurid
- KATTED
- looma
- loodud
- loomine
- looja
- Looja majandus
- cryptocurrencies
- Praegune
- DAO
- dappradar
- andmed
- Defi
- juurutada
- lähetatud
- juurutamine
- kasutuselevõtu
- juurutab
- detailid
- arendama
- Arendajad
- & Tarkvaraarendus
- digitaalne
- Digitaalsed varad
- otse
- dna
- Ära
- dünaamiline
- iga
- majandus
- ökosüsteemi
- tõhusalt
- volitama
- volitamine
- võimaldama
- kinnitada
- täielikult
- ERC721
- viga
- ethereum
- igaüks
- kõik
- näide
- suurepärane
- põnev
- täitma
- laiendamine
- kogemus
- uurima
- ekspordi
- nägu
- tuttav
- KIIRE
- kiiremini
- FUNKTSIOONID
- Tasud
- fail
- Faile
- esimene
- järgima
- Järel
- Soodustama
- tasuta
- Alates
- funktsioon
- funktsioonid
- rahastamise
- Mängud
- GAS
- gaasitasud
- saama
- Andma
- annab
- Go
- anda
- toetusi
- garantiid
- siin
- Suur
- Kuidas
- Kuidas
- aga
- HTTPS
- ideaalne
- ideid
- täitmine
- import
- in
- sisaldama
- Kaasa arvatud
- indeks
- info
- paigaldama
- selle asemel
- huvitatud
- Sissejuhatus
- investeering
- küsimustes
- IT
- JavaScript
- liituma
- Json
- Võti
- võtmed
- Teadma
- teadmised
- Keeled
- käivitatud
- viima
- õppinud
- võimendav
- raamatukogud
- Raamatukogu
- elu
- piiratud
- LINK
- Vaata
- näeb välja
- põhiline
- juhitud
- juhtimine
- juht
- palju
- Turundus
- Mass
- Massiline lapsendamine
- max laiuse
- Vahepeal
- keskmine
- Mälu
- Metaandmed
- meetod
- miljon
- piparmünt
- vermitud
- missioon
- MIT
- moodulid
- rohkem
- kõige
- liikuma
- nimi
- Vajadus
- võrgustikud
- Uus
- järgmine
- NFT
- NFT nutikad lepingud
- NFT-d
- sõlme
- eelkõige
- number
- objekt
- ONE
- avatud
- OpenSea
- Võimalus
- Muu
- ülevaade
- enda
- omanik
- omandiõigus
- pakend
- hüved
- inimesele
- Platon
- Platoni andmete intelligentsus
- PlatoData
- palun
- pluss
- eeldused
- esitlus
- era-
- Privaatvõtmed
- protsess
- töötlemine
- Toode
- Programm
- projekt
- projektid
- tõend
- kaitstud
- protokollid
- anda
- avalik
- Küsimused
- valik
- Lugenud
- lugejad
- saama
- kõrvaldama
- nõudma
- teadustöö
- Vahendid
- kaasa
- tagasipöördumine
- Tulu
- revolutsiooniline
- jooks
- Rust
- Säästa
- skripte
- lõigud
- väljavalitud
- komplekt
- seade
- peaks
- näitama
- näidatud
- sarnane
- alates
- aeglane
- nutikas
- arukas leping
- Tarkvaralepingud
- So
- SOL
- kindlus
- lahendus
- mõned
- kiirus
- Sponsorite
- Stage
- standardite
- algus
- Samm
- Sammud
- Veel
- kauplustes
- püüdma
- Võitleb
- Edukalt
- toetama
- sümbol
- Võtma
- võtab
- võtmine
- rääkimine
- meeskonnad
- Tehniline
- Tehnoloogia
- terminal
- testnet
- .
- Põhitõed
- oma
- Seal.
- seetõttu
- asjad
- Läbi
- aeg
- et
- sümboolne
- märgid
- tehing
- tehingu kiirus
- tõsi
- juhendaja
- Tundmatu
- URL
- kasutama
- Kasutaja
- User Experience
- Kasutajad
- kasulikkus
- eri
- Velas
- versioon
- kaudu
- Videod
- nähtavus
- W3
- rahakott
- kuidas
- Web3
- webp
- mis
- kuigi
- WHO
- lai
- Lai valik
- will
- väärt
- kirjutama
- kirjutamine
- sa
- Sinu
- ise
- sephyrnet