Alles, was Sie über die Erstellung von NFTs auf Velas wissen müssen
Die Erstellung von NFTs auf Velas kann Teams verschiedene Vorteile bringen. Dazu gehören die Nutzung intelligenter Verträge, die mit Ethereum kompatibel sind, eine blitzschnelle Transaktionsgeschwindigkeit, keine hohen Gasgebühren und vieles mehr.
Inhalt:
Einleitung
NFT ist eine revolutionäre Technologie, von der Benutzer auf verschiedene Weise profitieren können. Beispielsweise erhalten Benutzer einen noch nie dagewesenen Eigentumsnachweis für ihre digitalen Vermögenswerte. Darüber hinaus können NFTs zu einer völlig neuen Schöpferökonomie führen.
Angesichts all der Vorteile, die NFTs mit sich bringen, sprechen alle darüber, ihre Projekte mit NFTs zu stärken. Aber wissen Sie, wie man NFT-gestützte Smart Contracts entwickelt? Machen Sie sich keine Sorgen, wenn nicht, denn dieser Artikel führt Sie durch alle Schritte zum Erstellen von NFT-Smart-Verträgen auf Velas Testnet.
Bitte beachten Sie, dass dieses Tutorial Ihnen zeigt, wie Sie ein Einzel-NFT anstelle einer Sammlung erstellen. Dieser intelligente Vertrag ermöglicht es Benutzern also, jedes ihrer Fotos oder Videos als NFT zu prägen.
Warum Velas?
Es gibt viele Blockchain-Protokolle. Allerdings stoßen Entwickler bei der Verwendung immer noch auf Probleme. Beispielsweise hat Ethereum mit hohen Gasgebühren und einer langsamen Transaktionsverarbeitung zu kämpfen, während andere Blockchains von Entwicklern die Verwendung unbekannter Sprachen wie Rust erfordern.
Mit der Kerzen, die meisten dieser Bedenken bestehen nicht. Die Lösung von Velas übernimmt die beste DNA der Solana-Technologie und ergänzt sie durch zusätzliche Funktionen zur Unterstützung der Kompatibilität EVM. Dadurch steht Benutzern und Entwicklern eine ideale Plattform zur Verfügung, die ein hervorragendes Benutzererlebnis mit schnellerer Transaktionszeit garantiert. Darüber hinaus vereinfacht es den Entwicklungsprozess durch Solidity-Unterstützung.
Voraussetzungen:
Um mitzumachen, sollten Sie Node plus Yarn, den Paketmanager, haben. Außerdem sollten Sie über Grundkenntnisse in Solidity verfügen. Wenn Sie also nicht damit vertraut sind, rüsten Sie sich bitte mit den Grundlagen von Solidity und aus Zuerst den Schutzhelm.
Einrichtung
Um unser Projekt einzurichten, führen Sie den folgenden Befehl im Terminal aus.
npx hardhat
Wenn Sie Hardhat nicht installiert haben, wird die folgende Ausgabe angezeigt.
Typ y und klicken auf eingeben, und die Installation des Hardhat wird fortgesetzt. Wenn Sie jedoch bereits über Hardhat verfügen, wird die Aufforderung zur Hardhat-Installation nicht angezeigt. Stattdessen werden einige Fragen dazu gestellt, wie Sie das Projekt einrichten möchten.
Wir möchten ein einfaches Javascript-Projekt in unserem aktuellen Ordner, also klicken Sie einfach eingeben für alles.
Dann müssen wir unsere Abhängigkeiten für das Projekt installieren. Um diese zu installieren, verwenden wir den folgenden Befehl.
npm install --save-dev "^2.10.1" "@nomicfoundation/^1.0.1" "@openzeppelin/contracts" "dotenv"
Da wir Yarn verwenden, müssen wir Bibliotheken installieren, die von hardhat-toolbox verwendet werden.
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
Wenn Sie npm Version 7 oder höher verwenden, werden diese Bibliotheken direkt installiert.
Es ist erwähnenswert, dass wir noch einen weiteren Schritt unternehmen müssen, bevor wir einen Smart Contract schreiben. Das heißt, alle zu entfernen .Sol Dateien, die Sie im Vertragsordner sehen, und erstellen Sie eine neue Datei mit dem Namen VELASNFT.sol. Dies ist der Ordner, in dem wir unseren Vertrag schreiben werden.
So schreiben Sie einen NFT-Smart-Vertrag
Bauherr
Zunächst erstellen wir einen Barebone-Smart-Vertrag, in dem wir die Soliditätsversion definieren und einen leeren Smart-Contract-Körper erstellen.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.9; contract VELASNFT { }
Wir müssen einen Basis-Smart-Vertrag und einen Utility-Smart-Vertrag importieren. Dies sind insbesondere die Verträge, die zum Aufbau unseres NFT-Smart-Vertrags verwendet werden. Der Basisvertrag ist ERC721URIStorage, eine ERC721-Implementierung mit speicherbasierter Token-URI-Verwaltung.
Counters ist ein Versorgungsvertrag, der zur Zählung der Anzahl der geprägten NFTs verwendet wird.
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/utils/Counters.sol";
Unser Vertrag erbt den Basisvertrag. Dadurch können Nutzer auf alle Funktionen des Basisvertrags und unserer Smart Contracts zugreifen.
contract VELASNFT is ERC721URIStorage { }
Jetzt können wir einen Konstruktor für unseren Vertrag schreiben. Insbesondere wird unser Konstruktor keine Argumente haben, aber Sie müssen den Namen und das Symbol an den ERC721-Konstruktor übergeben.
constructor() ERC721("VELASNFT", "VN") {}
Am Ende dieses Schritts sollte Ihr Smart Contract so aussehen.
//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") {} }
Schreiben der Mint-Funktion
Für die Mint-Funktion müssen wir zuerst den Zähler einrichten. Fügen Sie den folgenden Ausschnitt in den obigen Vertragskonstruktor ein.
using Counters for Counters.Counter; Counters.Counter private _tokenIds;
Wir weisen der Counter-Struktur alle Funktionen der Counters-Bibliothek zu. Dann erstellen wir eine private Variable namens _tokenIds.
Beginnen wir nun mit der Entwicklung der Funktion. Es wird ein Argument benötigt: tokenURI,und es wird die URL zur JSON-Datei sein, in der alle Metadaten gespeichert sind. In den folgenden Abschnitten werden wir näher auf Metadaten eingehen. Die Mint-Funktion ist öffentlich sichtbar und gibt die ID des geprägten NFT zurück, die vom Typ uint256 sein wird.
function mint(string memory tokenURI) public returns (uint256) { }
Innerhalb der Funktion erhalten wir zunächst den aktuellen Zählerstand.
Um einen NFT zu prägen, verwenden wir _Minze Funktion, die Adresse und ID als Argumente verwendet. Als Adresse verwenden wir die Adresse des Anrufers und als ID den aktuellen Zählerstand. Danach müssen wir das speichern tokenURI.
Dazu müssen wir es tun _setTokenURI, Dadurch wird der URI mit der entsprechenden ID als Schlüssel gespeichert. Am Ende erhöhen wir den Zähler und dann die ID des erstellten NFT.
function mint(string memory tokenURI) public returns (uint256) { uint256 newItemId = _tokenIds.current(); _mint(minter, newItemId); _setTokenURI(newItemId, tokenURI); _tokenIds.increment(); return newItemId; }
Glückwunsch! Jetzt kann Ihr Smart Contract NFTs prägen! Hier finden Sie die Übersicht über den gesamten Vertrag.
//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; }
}
So stellen Sie den Vertrag bereit
Wir haben unseren NFT-Smart-Vertrag erstellt. Hier kommt der aufregende Schritt: die Bereitstellung. Aber bevor wir den Vertrag bereitstellen, müssen wir ihn kompilieren und ein Skript schreiben, das den Vertrag bereitstellt. Um den Vertrag zu kompilieren, führen Sie den folgenden Befehl im Terminal aus.
npx hardhat compile
Sie sehen die folgende Ausgabe.
Kommen wir nun zum nächsten Schritt und schreiben ein Skript für die Bereitstellung dieses Smart Contracts. Dazu gehen wir in den Ordner „scripts“ und öffnen die Datei „deploy.js“. Entfernen Sie dann den gesamten Inhalt und fügen Sie das folgende Snippet in diese Datei ein.
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);
});
Bevor wir den Vertrag bereitstellen, müssen wir Details zu Velas Testnet zur Datei hardhat.config.js hinzufügen. Öffnen Sie die Datei und fügen Sie die Velas-Testnetzkonfiguration hinzu.
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] } }
};
Erwähnenswert ist auch, dass Sie vor der Bereitstellung des Vertrags private Schlüssel für Ihr Wallet zur .env-Datei hinzufügen und über ein Testnet-VLX-Token im Wallet verfügen müssen. Sie können Testnet-Tokens von erhalten hier.
Nachdem wir nun alles eingerichtet haben, führen Sie den folgenden Befehl im Terminal aus.
npx hardhat run scripts/deploy.js --network velastestnet
Wenn der Befehl erfolgreich ausgeführt wurde, sehen Sie in Ihrem Terminal eine Ausgabe ähnlich der unten gezeigten.
Prägen Sie die NFT
Während der Smart Contract bereitgestellt wird, können wir den NFT vom Terminal aus prägen. Starten Sie dazu zunächst die Hardhat-Konsole mit dem folgenden Befehl.
npx hardhat console --network velastestnet
Die Ausgabe wird unten angezeigt.
Dann erstellen wir die Vertragsvariable namens „velasnft“dem „Vermischten Geschmack“. Seine getContractAt Die Methode gibt das Vertragsobjekt zurück.
const velasnft = await ethers.getContractAt("VELASNFT", '0x587133187DEC8E1D5a964254B42FF3627a649313')
Bitte beachten Sie die unten gezeigte Ausgabe.
Um den NFT zu prägen, verwenden wir die Mint-Methode des velasnft Variable. Wir müssen auch den Link für Metadaten an die Methode übergeben. Weitere Informationen zu Metadatenstandards finden Sie hier KLICKEN SIE HIER.
await velasnft.mint("https://metadatastorage.com/velasnft/0")
Schauen Sie sich die Ausgabe unten an.
Jetzt ist es an der Zeit, den Besitzer des NFT zu überprüfen. Da wir mit dem geprägt haben Besitzer von Methode, übergeben wir nun den Index des NFT, den wir geprägt haben.
await velasnft.ownerOf(0)
So erhalten wir das Ergebnis des NFT-Besitzers.
Zusammenfassung
In dem Artikel haben wir gelernt, wie man einen NFT-Smart-Vertrag schreibt, der es Benutzern ermöglicht, NFTs zu prägen. Darüber hinaus ist es uns gelungen, es im Velas-Testnetz bereitzustellen. Jetzt können Sie neue NFT-basierte Anwendungen entwickeln und das dynamische Velas-Ökosystem erkunden.
Über diesen Link können Sie auch nachlesen, wie Sie ein DAO auf Velas erstellen.
Velas möchte diejenigen unterstützen, die die Entwicklung von Web3 beschleunigen möchten. Um dieses Ziel zu erreichen, hat Velas daher ein Förderprogramm in Höhe von 100 Millionen US-Dollar ins Leben gerufen. Mittlerweile zielt dieses Programm auch darauf ab, den Ausbau des Velas-Ökosystems zu unterstützen.
Mit dem Stipendienprogramm von Velaskönnen Entwickler ihre spannenden Ideen effizienter umsetzen. Jedes Projekt hat die Möglichkeit, eine Förderung von bis zu 100,000 US-Dollar zu erhalten. Darüber hinaus haben ausgewählte Teams Zugang zu anderen Ressourcen, um die Entwicklung ihrer Projekte zu fördern, darunter Marketing, technische Berater und mehr.
Das Förderprogramm deckt eine breite Palette von Kategorien ab, darunter unter anderem DeFi, NFT, Blockchain-basierte Spiele und mehr.
Wenn Sie daran interessiert sind, die Masseneinführung von Kryptowährungen und Blockchain zu beschleunigen, Bewerben Sie sich jetzt, um dem sich ständig weiterentwickelnden Ökosystem von Velas beizutreten.
Erfahren Sie mehr über Velas:
Haftungsausschluss — Dies ist ein gesponserter Artikel. DappRadar unterstützt keine Inhalte oder Produkte auf dieser Seite. DappRadar ist bestrebt, genaue Informationen bereitzustellen, aber die Leser sollten immer ihre eigenen Nachforschungen anstellen, bevor sie Maßnahmen ergreifen. Artikel von DappRadar können nicht als Anlageberatung betrachtet werden.
- SEO-gestützte Content- und PR-Distribution. Holen Sie sich noch heute Verstärkung.
- Platoblockkette. Web3-Metaverse-Intelligenz. Wissen verstärkt. Hier zugreifen.
- Quelle: https://dappradar.com/blog/how-to-create-nft-on-velas
- 100 Mio. US$
- 000
- 1
- 10
- 7
- 9
- a
- LiveBuzz
- oben
- beschleunigend
- Zugang
- Trading Konten
- genau
- Action
- Zusatz
- Zusätzliche
- Adresse
- Adoption
- Beratung
- Nach der
- Ziel
- Alle
- erlaubt
- bereits
- immer
- und
- Anwendungen
- Argument
- Argumente
- Artikel
- Artikel
- Details
- verfügbar
- – warten auf Sie!
- Base
- basic
- Grundlagen
- weil
- Bevor
- Sein
- unten
- Nutzen
- Vorteile
- BESTE
- Blockchain
- blockchain-powered
- blockketten
- Körper
- bringen
- bauen
- erbaut
- namens
- Anrufer
- Kann bekommen
- Kategorien
- aus der Ferne überprüfen
- Sammlung
- Kompatibilität
- kompatibel
- Bedenken
- Abschluss
- Konfiguration
- betrachtet
- Konsul (Console)
- Berater
- Inhalt
- Vertrag
- Verträge
- Dazugehörigen
- Counter
- Zähler
- Covers
- erstellen
- erstellt
- Erstellen
- Schöpfer
- Schöpferökonomie
- Kryptowährungen
- Strom
- DAO
- DappRadar
- technische Daten
- DeFi
- einsetzen
- Einsatz
- Bereitstellen
- Einsatz
- setzt ein
- Details
- entwickeln
- Entwickler
- Entwicklung
- digital
- Digitale Assets
- Direkt
- Frau
- Nicht
- dynamisch
- jeder
- Wirtschaft
- Ökosystem
- effizient
- ermächtigen
- Empowerment
- ermöglichen
- befürworten
- vollständig
- ERC721
- Fehler
- Astraleum
- jedermann
- alles
- Beispiel
- Ausgezeichnet
- unterhaltsame Programmpunkte
- ausführen
- Expansion
- ERFAHRUNGEN
- ERKUNDEN
- Ausfuhr
- Gesicht
- vertraut
- FAST
- beschleunigt
- Eigenschaften
- Honorare
- Reichen Sie das
- Mappen
- Vorname
- folgen
- Folgende
- Fördern
- Frei
- für
- Funktion
- Funktionen
- Finanzierung
- Games
- GAS
- Gasgebühren
- bekommen
- ABSICHT
- gibt
- Go
- gewähren
- für Balkonkraftwerke Reduzierung
- Garantien
- hier
- GUTE
- Ultraschall
- Hilfe
- aber
- HTTPS
- ideal
- Ideen
- Implementierung
- importieren
- in
- das
- Einschließlich
- Index
- Information
- installieren
- beantragen müssen
- interessiert
- Einleitung
- Investition
- Probleme
- IT
- JavaScript
- join
- JSON
- Wesentliche
- Tasten
- Wissen
- Wissen
- Sprachen
- ins Leben gerufen
- führen
- gelernt
- Nutzung
- Bibliotheken
- Bibliothek
- Lebensdauer
- Limitiert
- LINK
- aussehen
- aussehen wie
- Main
- verwaltet
- Management
- Manager
- viele
- Marketing
- Masse
- Massenadoption
- max-width
- Mittlerweile
- mittlere
- Memory
- Metadaten
- Methode
- Million
- Minze
- geprägt
- Ziel
- MIT
- Modul
- mehr
- vor allem warme
- schlauer bewegen
- Name
- Need
- Netzwerke
- Neu
- weiter
- NFT
- NFT-Smart-Verträge
- NFTs
- Knoten
- vor allem
- Anzahl
- Objekt
- EINEM
- XNUMXh geöffnet
- OpenSea
- Gelegenheit
- Andere
- Überblick
- besitzen
- Eigentümer
- Eigentum
- Paket
- Vergünstigungen
- Plattform
- Plato
- Datenintelligenz von Plato
- PlatoData
- Bitte
- erfahren
- Voraussetzungen
- presentation
- privat
- Private Schlüssel
- Prozessdefinierung
- Verarbeitung
- Produkt
- Programm
- Projekt
- Projekte
- Beweis
- geschützt
- Protokolle
- die
- Öffentlichkeit
- Fragen
- Angebot
- Lesen Sie mehr
- Leser
- erhalten
- entfernen
- erfordern
- Forschungsprojekte
- Downloads
- Folge
- Rückkehr
- Rückgabe
- Revolutionär
- Führen Sie
- Rust
- Speichern
- Skripte
- Abschnitte
- ausgewählt
- kompensieren
- Setup
- sollte
- erklären
- gezeigt
- ähnlich
- da
- langsam
- smart
- Smart-Vertrag
- Smart Contracts
- So
- SOL
- solide
- Lösung
- einige
- Geschwindigkeit
- Sponsored
- Stufe
- Normen
- Anfang
- Schritt
- Shritte
- Immer noch
- Läden
- streben
- Kämpft
- Erfolgreich
- Support
- Symbol
- Nehmen
- nimmt
- Einnahme
- sprechen
- Teams
- Technische
- Technologie
- Terminal
- Testnet
- Das
- Die Grundlagen
- ihr
- Dort.
- deswegen
- Durch
- Zeit
- zu
- Zeichen
- Tokens
- Transaktion
- Transaktionsgeschwindigkeit
- was immer dies auch sein sollte.
- Lernprogramm
- nicht vertraut
- URL
- -
- Mitglied
- Benutzererfahrung
- Nutzer
- Nutzen
- verschiedene
- Kerzen
- Version
- Videos
- Sichtbarkeit
- W3
- Wallet
- Wege
- Web3
- webp
- welche
- während
- WHO
- breit
- Große Auswahl
- werden wir
- wert
- schreiben
- Schreiben
- Du
- Ihr
- sich selbst
- Zephyrnet