Tout ce que vous devez savoir sur la création de NFT sur Velas
La création de NFT sur Velas peut offrir aux équipes divers avantages. Il s’agit notamment de tirer parti des contrats intelligents compatibles avec Ethereum, de bénéficier d’une vitesse de transaction ultra-rapide, d’être exempté de frais d’essence élevés, et bien plus encore.
Contenu:
Introduction
NFT est une technologie révolutionnaire qui peut profiter aux utilisateurs de diverses manières. Par exemple, il offre aux utilisateurs une preuve de propriété sur leurs actifs numériques comme jamais auparavant. De plus, les NFT peuvent conduire à une toute nouvelle économie des créateurs.
Avec tous les avantages qu'apportent les NFT, tout le monde parle de renforcer ses projets avec les NFT. Mais savez-vous comment développer des contrats intelligents pris en charge par NFT ? Sinon, ne vous inquiétez pas, car cet article vous guidera à travers toutes les étapes de création de contrats intelligents NFT sur Velas Testnet.
Veuillez noter que ce didacticiel vous montrera comment créer un NFT unique au lieu d'une collection. Ce contrat intelligent permettra donc aux utilisateurs de créer n'importe laquelle de leurs photos ou vidéos en tant que NFT.
Pourquoi Velas?
Il existe de nombreux protocoles blockchain disponibles. Mais les développeurs sont toujours confrontés à des problèmes lors de leur utilisation. Par exemple, Ethereum est confronté à des frais d’essence élevés et à un traitement lent des transactions, tandis que d’autres blockchains obligent les développeurs à utiliser des langages inconnus comme Rust.
Avec Velas, la plupart de ces préoccupations n'existent pas. La solution de Velas hérite du meilleur ADN de la technologie Solana et le complète avec des fonctionnalités supplémentaires pour prendre en charge la compatibilité avec EVM. Cela donne aux utilisateurs et aux développeurs une plate-forme idéale qui garantit une excellente expérience utilisateur avec un temps de transaction plus rapide. De plus, il simplifie le processus de développement avec le support Solidity.
Pré-requis
Pour suivre, vous devriez avoir Node plus Yarn, le gestionnaire de packages. De plus, vous devez avoir des connaissances de base sur Solidity. Alors si vous ne le connaissez pas, merci de vous équiper des bases de Solidity et Le casque d'abord.
installation
Pour configurer notre projet, exécutez la commande suivante dans le terminal.
npx hardhat
Vous verrez le résultat suivant si Hardhat n’est pas installé.
Type y et cliquez sur entrer, et il procédera à l'installation du Hardhat. Cependant, si vous possédez déjà Hardhat, il ne vous affichera pas l'invite d'installation de Hardhat. Au lieu de cela, il vous posera quelques questions sur la manière dont vous souhaitez mettre en place le projet.
Nous voulons un projet Javascript de base dans notre dossier actuel, alors cliquez simplement sur entrer pour tout.
Ensuite, nous devons installer nos dépendances pour le projet. Pour les installer, nous utiliserons la commande suivante.
npm install --save-dev "^2.10.1" "@nomicfoundation/^1.0.1" "@openzeppelin/contracts" "dotenv"
Comme nous utilisons Yarn, nous devons installer les bibliothèques utilisées par hardhat-toolbox.
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
Si vous utilisez npm version 7 ou versions ultérieures, ces bibliothèques seront installées directement.
Il convient de noter que nous devons franchir une étape supplémentaire avant de rédiger un contrat intelligent. C'est pour supprimer tout .soleil fichiers que vous voyez dans le dossier des contrats et créez un nouveau fichier appelé VELASNFT.sol. C'est le dossier dans lequel nous rédigerons notre contrat.
Comment rédiger un contrat intelligent NFT
Constructeur
Pour commencer, nous allons créer un contrat intelligent barebone dans lequel nous définirons la version solidité et créerons un corps de contrat intelligent vide.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.9; contract VELASNFT { }
Nous devons importer un contrat intelligent de base et un contrat intelligent de service public. Ce sont notamment les contrats qui seront utilisés pour construire notre contrat intelligent NFT. Le contrat de base est ERC721URIStorage, une implémentation ERC721 avec gestion d'URI de jeton basée sur le stockage.
Counters est un contrat de service public qui sera utilisé pour compter le nombre de NFT émis.
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/utils/Counters.sol";
Notre contrat héritera du contrat de base. Cela permettra aux utilisateurs d'accéder à toutes les fonctions du contrat de base et de nos contrats intelligents.
contract VELASNFT is ERC721URIStorage { }
Nous pouvons maintenant écrire un constructeur pour notre contrat. Notamment, notre constructeur n'aura aucun argument, mais vous devrez transmettre le nom et le symbole au constructeur ERC721.
constructor() ERC721("VELASNFT", "VN") {}
A la fin de cette étape, votre contrat intelligent devrait ressembler à ceci.
//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") {} }
Écrire la fonction menthe
Pour la fonction menthe, nous devons d’abord configurer le compteur. Collez l'extrait suivant dans le contrat au-dessus du constructeur.
using Counters for Counters.Counter; Counters.Counter private _tokenIds;
nous attribuons toutes les fonctions de la bibliothèque Counters à la structure Counter. Ensuite nous créerons une variable privée appelée _tokenIds.
Commençons maintenant à développer la fonction. Il faudra un argument : jetonURI, et ce sera l'url du fichier json qui stocke toutes les métadonnées. Nous aborderons davantage les métadonnées dans les sections suivantes. La fonction mint aura une visibilité publique et renverra l'ID du NFT créé, qui sera de type uint256.
function mint(string memory tokenURI) public returns (uint256) { }
À l’intérieur de la fonction, nous obtiendrons d’abord le décompte actuel du compteur.
Pour créer un NFT, nous utiliserons _menthe fonction qui prend l’adresse et l’ID comme arguments. Pour l'adresse, nous utiliserons l'adresse de l'appelant et l'ID sera le décompte actuel. Après cela, nous devons sauvegarder le jetonURI.
Pour ce faire, nous devons _setTokenURI, qui enregistrera l'URI avec l'ID correspondant comme clé. Au final, nous incrémenterons le compteur, puis l'ID du NFT créé.
function mint(string memory tokenURI) public returns (uint256) { uint256 newItemId = _tokenIds.current(); _mint(minter, newItemId); _setTokenURI(newItemId, tokenURI); _tokenIds.increment(); return newItemId; }
Toutes nos félicitations! Désormais, votre contrat intelligent peut créer des NFT ! Voici un aperçu de l'ensemble du contrat.
//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; }
}
Comment déployer le contrat
Nous avons construit notre contrat intelligent NFT. Voici l’étape passionnante, le déploiement. Mais avant de déployer le contrat, nous devons le compiler et écrire un script qui déploie le contrat. Pour compiler le contrat, exécutez la commande suivante dans le terminal.
npx hardhat compile
Vous verrez la sortie suivante.
Passons maintenant à l'étape suivante : écrire un script pour déployer ce contrat intelligent. Pour ce faire, nous allons aller dans le dossier scripts et ouvrir le fichier déployer.js. Ensuite, supprimez tout le contenu et collez l'extrait suivant dans ce fichier.
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);
});
Avant de déployer le contrat, nous devons ajouter des détails sur Velas testnet au fichier hardhat.config.js. Ouvrez le fichier et ajoutez la configuration Velas testnet.
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] } }
};
Il convient également de mentionner qu'avant de déployer le contrat, vous devez ajouter les clés privées de votre portefeuille au fichier .env et disposer d'un jeton testnet VLX dans le portefeuille. Vous pouvez obtenir des jetons testnet auprès de ici.
Maintenant que tout est configuré, exécutez la commande suivante dans le terminal.
npx hardhat run scripts/deploy.js --network velastestnet
Si la commande est exécutée avec succès, vous verrez le résultat similaire à celui indiqué ci-dessous dans votre terminal.
Frappez le NFT
Au fur et à mesure que le contrat intelligent est déployé, nous pouvons créer le NFT depuis le terminal. Pour ce faire, démarrez d’abord la console du casque à l’aide de la commande suivante.
npx hardhat console --network velastestnet
Les résultats sont présentés ci-dessous.
Ensuite, nous créerons la variable de contrat appelée "velasnft"L’ getContractAt La méthode renverra l’objet du contrat.
const velasnft = await ethers.getContractAt("VELASNFT", '0x587133187DEC8E1D5a964254B42FF3627a649313')
Veuillez vous référer à la sortie affichée ci-dessous.
Pour créer le NFT, nous utiliserons la méthode mint du velasnft variable. Nous devons également transmettre le lien des métadonnées à la méthode. Vous pouvez en savoir plus sur les normes de métadonnées ICI.
await velasnft.mint("https://metadatastorage.com/velasnft/0")
Découvrez la sortie ci-dessous.
Il est maintenant temps de vérifier le propriétaire du NFT. Puisque nous avons frappé en utilisant le Propriétaire de méthode, passons maintenant à l'index du NFT que nous avons créé.
await velasnft.ownerOf(0)
C'est ainsi que nous obtenons le résultat du propriétaire du NFT.
Conclusion
Dans l'article, nous avons appris comment rédiger un contrat intelligent NFT qui permet aux utilisateurs de créer des NFT. De plus, nous avons réussi à le déployer sur Velas testnet. Vous pouvez désormais développer de nouvelles applications basées sur NFT et explorer l'écosystème dynamique Velas.
Vous pouvez également découvrir comment créer un DAO sur Velas via ce lien.
Velas veut responsabiliser ceux qui s'efforcent d'accélérer le développement du Web3. Velas a donc lancé un programme de subventions de 100 millions de dollars pour accomplir cette mission. Parallèlement, ce programme vise également à soutenir l’expansion de l’écosystème Velas.
Avec le programme de subventions de Velas, les développeurs peuvent donner vie à leurs idées passionnantes plus efficacement. Chaque projet a la possibilité de recevoir jusqu'à 100,000 XNUMX $ de financement. De plus, les équipes sélectionnées auront accès à d’autres ressources pour favoriser le développement de leurs projets, notamment du marketing, des consultants techniques, etc.
Le programme de subventions couvre un large éventail de catégories, y compris, mais sans s'y limiter, DeFi, NFT, les jeux basés sur la blockchain, etc.
Si vous souhaitez accélérer l’adoption massive des crypto-monnaies et de la blockchain, postulez maintenant pour rejoindre l'écosystème en constante évolution de Velas.
En savoir plus sur Velas :
Clause de non-responsabilité — Ceci est un article sponsorisé. DappRadar n'approuve aucun contenu ou produit sur cette page. DappRadar vise à fournir des informations précises, mais les lecteurs doivent toujours faire leurs propres recherches avant d'agir. Les articles de DappRadar ne peuvent être considérés comme des conseils en investissement.
- Contenu propulsé par le référencement et distribution de relations publiques. Soyez amplifié aujourd'hui.
- Platoblockchain. Intelligence métaverse Web3. Connaissance Amplifiée. Accéder ici.
- La source: https://dappradar.com/blog/how-to-create-nft-on-velas
- 100 millions de dollars
- 000
- 1
- 10
- 7
- 9
- a
- A Propos
- au dessus de
- accélérer
- accès
- hybrides
- Avec cette connaissance vient le pouvoir de prendre
- Action
- ajout
- Supplémentaire
- propos
- Adoption
- conseils
- Après
- vise
- Tous
- permet
- déjà
- toujours
- ainsi que
- applications
- argument
- arguments
- article
- sur notre blog
- Outils
- disponibles
- attendre
- base
- Essentiel
- Basics
- car
- before
- va
- ci-dessous
- profiter
- avantages.
- LES MEILLEURS
- blockchain
- blockchain-powered
- blockchains
- corps
- apporter
- construire
- construit
- appelé
- demandeur
- Peut obtenir
- catégories
- vérifier
- collection
- compatibilité
- compatible
- Préoccupations
- conclusion
- configuration
- considéré
- Console
- consultants
- contenu
- contrat
- contrats
- Correspondant
- Counter
- services
- Housses
- engendrent
- créée
- La création
- créateur
- Économie des créateurs
- cryptocurrencies
- Courant
- DAO
- DappRadar
- données
- DeFi
- déployer
- déployé
- déployer
- déploiement
- déploie
- détails
- développer
- mobiles
- Développement
- numérique
- Actifs numériques
- directement
- adn
- Ne pas
- Dynamic
- chacun
- économie
- risque numérique
- efficacement
- vous accompagner
- l'autonomisation des
- permettre
- endosser
- entièrement
- ERC721
- erreur
- Ethereum
- tout le monde
- peut
- exemple
- excellent
- passionnant
- exécuter
- avec des données
- d'experience
- explorez
- exportations
- Visage
- familier
- RAPIDE
- plus rapide
- Fonctionnalités:
- Frais
- Déposez votre dernière attestation
- Fichiers
- Prénom
- suivre
- Abonnement
- Accueillir
- Gratuit
- De
- fonction
- fonctions
- financement
- Games
- GAS
- frais d'essence
- obtenez
- Donner
- donne
- Go
- subvention
- subventions
- garantit
- ici
- Haute
- Comment
- How To
- Cependant
- HTTPS
- idéal
- et idées cadeaux
- la mise en oeuvre
- importer
- in
- comprendre
- Y compris
- indice
- d'information
- installer
- plutôt ;
- intéressé
- Introduction
- un investissement
- vous aider à faire face aux problèmes qui vous perturbent
- IT
- JavaScript
- rejoindre
- json
- ACTIVITES
- clés
- Savoir
- spécialisées
- Langues
- lancé
- conduire
- savant
- en tirant parti
- bibliothèques
- Bibliothèque
- VIE
- limité
- LINK
- Style
- ressembler
- Entrée
- gérés
- gestion
- manager
- de nombreuses
- Stratégie
- Masse
- Adoption de masse
- largeur maximale
- En attendant
- moyenne
- Mémoire
- Métadonnées
- méthode
- million
- menthe
- frappées
- Mission
- MIT
- Module
- PLUS
- (en fait, presque toutes)
- Bougez
- prénom
- Besoin
- réseaux
- Nouveauté
- next
- NFT
- Contrats intelligents NFT
- NFTs
- nœud
- notamment
- nombre
- objet
- ONE
- ouvert
- OpenSea
- Opportunités
- Autre
- vue d'ensemble
- propre
- propriétaire
- possession
- paquet
- avantages
- plateforme
- Platon
- Intelligence des données Platon
- PlatonDonnées
- veuillez cliquer
- plus
- conditions préalables
- présentation
- Privé
- Clés privées
- processus
- traitement
- Produit
- Programme
- Projet
- projets
- preuve
- protégé
- protocoles
- fournir
- public
- fréquemment posées
- gamme
- Lire
- lecteurs
- recevoir
- supprimez
- exigent
- un article
- Resources
- résultat
- retourner
- Retours
- révolutionnaire
- Courir
- Calme
- Épargnez
- scripts
- les sections
- choisi
- set
- installation
- devrait
- montrer
- montré
- similaires
- depuis
- lent
- smart
- contrat intelligent
- Contrats intelligents
- So
- SOL
- solidité
- sur mesure
- quelques
- vitesse
- Sponsorisé
- Étape
- Normes
- Commencer
- étapes
- Étapes
- Encore
- STORES
- s'efforcer
- Luttes
- Avec succès
- Support
- symbole
- Prenez
- prend
- prise
- parlant
- équipes
- Technique
- Technologie
- terminal
- testnet
- La
- Les bases
- leur
- Là.
- donc
- des choses
- Avec
- fiable
- à
- jeton
- Tokens
- transaction
- vitesse de transaction
- oui
- tutoriel
- inconnu
- URL
- utilisé
- Utilisateur
- Expérience utilisateur
- utilisateurs
- utilitaire
- divers
- Velas
- version
- via
- Vidéos
- définition
- W3
- Wallet
- façons
- Web3
- webp
- qui
- tout en
- WHO
- large
- Large gamme
- sera
- vaut
- écrire
- écriture
- Vous n'avez
- Votre
- vous-même
- zéphyrnet