NFT est devenu un mot que vous entendez presque tous les jours même si vous n’êtes pas impliqué dans le monde de la Blockchain et du web3. Pour la plupart, c’est lié aux images que nous entendons qui ont été vendues à des prix élevés, mais c’est plus que cela. Dans cette série, vous allez non seulement connaitre ce qu’est un NFT, mais vous allez également créer votre premier NFT.
Table Des Matières
Qu’est ce qu’un un NFT ?
NFT signifie “Non-fungible Token”, ces tokens ne sont pas interchangeables avec d’autres articles car ils ont des propriétés uniques.En effet, les NFT sont des jetons que nous pouvons utiliser pour représenter la propriété d’éléments uniques. Ils nous ont laissé symboliser des choses comme l’art, les objets de collection, l’immobilier. Ils ne peuvent avoir qu’un seul propriétaire officiel à la fois et ils sont sécurisés par la blockchain Ethereum – personne ne peut modifier l’enregistrement de propriété ou copier/coller un nouveau NFT.
Qu’est ce que ERC721 ?
Nous avons déjà écrit un article sur les ERC20 tokens, vous pouvez le consulter à partir de ce lien, mais pas tous les jetons suivront la même norme, ERC721 apparaît dans des situations immobilières ou artistiques.
En bref et en termes plus simples, un jeton ERC-721 n’est rien de plus qu’un jeton “à collectionner”. Grâce à cela, nous pouvons définir la valeur d’un jeton ERC-721 en fonction de la rareté et de la particularité de ses propriétés. Cela signifie qu’il sera plus attrayant pour ses futurs propriétaires ou “Collectionneurs”.
Créer le contrat intelligent d’ERC721:
On va utiliser truffle comme environnement de développement,on a déjà fait un article qui va vous facilite l’apprentissage de cet outil.vous pouvez le voir en cliquant ici.
Comme nous l’avons déjà fait dans le jeton ERC20, nous utiliserons oppenzeppling pour écrire les fonctions déclarées dans l’interface du standard ERC721.
OpenZeppelin Contract est une bibliothèque open source avec un code réutilisable pré-testé pour faciliter le développement de contrats intelligents.
Donc vous devez installez OpenZeppelin Contract avec la commande ci-dessous:
Après avoir créé votre fichier solidity, vous importez la partie de ERC721 d’openzeppelin dans notre fichier :
Et initialiser le Token, héritant du contrat ERC721.sol d’openzeppelin :
Nous avons également besoin d’un compteur, il est utile de générer des identifiants incrémentiels pour nos NFT. Nous avons nommé la variable _tokenIdCounter .Donc on va importer le module mentionne dans l’image ci-dessous:
Dans le constructeur, nous avons initialisé notre ERC721 avec son nom et son symbole.
_baseUri() est l’URL qui sera ajoutée en tant que “préfixe” à tous nos tokenURI(la concaténation du baseURI et du tokenId). Vide par défaut, peut être remplacé dans les contrats enfants. Et c’est ce que nous allons faire dans cette étape.
Ensuite, nous implémentons la fonction ‘mint’. C’est la fonction qui vous permet de publier une instance de ce Smart Contract sur la blockchain.
Déployer le contrat intelligent
Pour déployer votre contract, vous aurez besoin de configurer un Ethereum node, ce qui est difficile. Donc on va utiliser infura .
Infura est un cluster de nœuds Ethereum hébergé qui permet d’exécuter votre application sans les obliger à configurer leur propre Ethereum node.
vous devez donc vous rendre sur infura et créer un compte.
vous allez créer votre premier projet avec l’aide fournie par infra.après,vous cliquez sur :
pour déployer votre contrat, vous aller utiliser rinkeby testnet,alors on va la choisir et on copie le lien fournie:
Installons HDWalletProvider avec la commande ci-dessous:
Puis vous ouvrez truffle-config pour avoir l’opportunité d’ajouter les lignes comme mentionné dans les images ci-dessous :
Vous devez faire une dernière modification dans le fichier de migration:
Maintenant notre contrat est prêt, tapez simplement dans le terminal la commande suivante :
si tout se passe bien, vous recevrez un message sur votre console comme dans l’image ci-dessous :
Félicitations!! vous venez de créer votre premier ERC721 token. De plus, le déployer avec rinkeby testnet . Et dans les articles suivants de cette série, vous allez minter votre premier NFT, créer une dapp de minting …
I benefited a lot when watching this article, thanks
Very glad to hear that. Feel free to check out some videos we just released about the same topic: https://www.youtube.com/playlist?list=PL2y4bwMEjCoTt9_kiIAgEWqgOJI-SqNTJ. All the best
Vraiment c’est un sujet actuel. L’article explique le sujet d’une manière simple.
Très heureux d’entendre cela. N’hésitez pas à regarder quelques vidéos que nous venons de publier sur le même sujet: https://www.youtube.com/playlist?list=PL2y4bwMEjCoTt9_kiIAgEWqgOJI-SqNTJ