0xNekr Profile picture
May 31 20 tweets 11 min read
[#THREAD] Déployer et tester son premier smart contract

Difficulté technique : ★☆☆☆☆

La dernière fois on a développé notre premier smart contrat…

Aujourd'hui on va faire en sorte de le déployer sur la blockchain !

#Web3 #Solidity #SmartContract #NFT #Crypto #ETH
⬇️
1/19
[INTRO]

Pour commencer, n'oubliez pas d'aller lire / appliquer tout ce qu'on a apprit dans le dernier thread sur comment développer un smart contract ERC721, vous pouvez le retrouver ici :



2/19
[INTRO]

Si vous voulez tester par vous même je vous conseille de repartir du code présent sur mon #Github :

github.com/0xNekr/HowToCr…

3/19
[IMPORTANT]

Depuis mon dernier thread j'ai réalisé une correction sur le smart contract qu'on a réalisé ensemble. Sur la fonction "tokenURI" qui avait une coquille.

D'où l'importance de faire des tests sur des contrats immuables !

github.com/0xNekr/HowToCr…

4/19
Comme la dernière fois, tout va se passer sur

remix.ethereum.org

C'est l'endroit le plus simple pour déployer un smart contract.
Il existe plusieurs méthodes pour le faire mais aujourd'hui on va se concentrer sur celle de remix.

5/19
[Compilation]

La première étape est de compiler notre code :

1 - Aller dans le "compiler" de Remix.
2 - Sélectionner la version de Solidity (0.8.10).
3 - Compiler le code.

6/19
Ensuite on vérifie bien qu'on est connecté à MM au réseau sur lequel on souhaite déployer.

Ici j'ai choisi le réseau de test #Rinkeby d'#Ethereum.

Pour récupérer des ETH de test c'est ici :
faucets.chain.link/rinkeby

Vous pouvez connecter n'importe quelle blockchain #EVM

7/19
[Déploiement]

De retour sur Remix pour déployer :

1 - Aller dans "Deploy & Run"
2 - Sélectionner "Injected Web3" qui va détecter notre réseau
3 - Sélectionner notre contrat à déployer : "NekrIsERC721"
4 - Déployer le contrat avec les paramètres : ⬇️

8/19
[Déploiement]

Notre déploiement nous demande une variable "baseURI".

Si vous avez suivi le dernier thread vous avez compris que ce déploiement est un déclenchement du "constructor" de notre code.

C'est lui qui va définir l'URL des métadonnées.

9/19
[Déploiement]

Mon URI de métadonnées est celui-ci :

ipfs://QmVAV8kRmYxcTGmUb9zVGngKfbzsTuT7d5MQ7hPBHGT21F/

C'est un lien IPFS qui contient les métadonnées en ".json" de mes NFTs que j'ai créé grâce à ce tutoriel :

betterprogramming.pub/generate-your-…

10/19
[Déploiement]

Sur Remix il ne reste plus qu'à remplir "baseURI" et cliquer sur "transact".

Une fenêtre MM s'ouvre pour valider la transaction de déploiement de contrat, une fois fait, tout est visible sur l'etherscan de Rinkeby.

rinkeby.etherscan.io/tx/0x198d3cc5e…

11/19
[Tests]

Une fois le contrat déployé, vous pouvez voir qu'il est possible de le tester directement depuis Remix.

On a développé 4 fonctions mais on a accès à toutes celles d'ERC721, j'explique tout ça ici



Place aux tests

12/19
[Tests]

On va commencer par mint un #NFT. Pour cela :

1 - On définit la valeur à envoyer en wei (0.00001 ether = 10000000000000 wei).
2 - On appelle la fonction de mint avec "1" en paramètre.
3 - Une fenêtre MM s'ouvre pour confirmer la transaction.

Le résultat : ⬇️

13/19
[Tests]

Voici ma transaction qui s'est bien passée :
rinkeby.etherscan.io/tx/0xc0d6fb0f9…

Vous connaissez #Opensea ? Et bien on peut même voir notre NFT sur leur testnet ! C'est pas beau tout ça ?

testnets.opensea.io/collection/nek…

14/19
[Tests]

Pour voir votre collection il suffit de récupérer l'adresse du contrat depuis Remix, la mienne est la suivante :

0x3549171f47daB96549815300E1CfE2EFd6602440

Vous pouvez profiter de ces tests pour vous familiariser avec des outils comme Etherscan.

15/19
[Tests]

Comme je suis une whale je vais mint le reste de la supply 🐳

Les étapes sont les mêmes, il faut juste penser à mettre "99" pour la fonction "mint" et 99 fois le prix dans la valeur à envoyer.

Résultat :

rinkeby.etherscan.io/tx/0xa54c14335…

16/19
[Tests]

Et lorsqu'on retourne sur Opensea... TADAM ! Tous nos NFTs ont été mint ! Premier sold out c'est beau !

Vous avez réussi à déployer votre premier contrat et à le tester, félicitation !

Et dans mon prochain thread on va améliorer notre premier contrat!

17/19
[Conclusion]

Maintenant que vous en êtes là, n'hésitez pas à tester les nombreuses fonctions que propose ERC721.

Vous comprendrez bien mieux comment les NFTs fonctionnent et vous n'avez pas de risque de perdre de l'argent sur les réseaux de tests ! Soyez curieux !

18/19
Merci de m'avoir lu !

Encore une fois je suis à l'écoute de tous les retours, et merci de votre soutien sur mes derniers threads, nous ne sommes qu'au début !

Merci à @CryptoLidl x @CrypToma8 et à la famille @CryptApeDAO ! 🦍

Et vive la #tech !

19/19
N’hésitez pas à me suivre pour la suite !

On abordera principalement la whitelist et les étapes de vente dans le prochain thread qui arrive très bientôt 🔥

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with 0xNekr

0xNekr Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @0xNekr

May 31
[THREAD DE MES THREADS💻]

Histoire de facilement tout retrouver, voici mes threads dans l'ordre de publication ! 🥳

⬇️⬇️⬇️
Read 4 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(