FWEB3 suite

Précédemment, nous avons vu comment interagir avec notre wallet en faisant une opération de réception d'argent et de transfert vers un autre wallet.
Maintenant nous allons nous intéresser à deux notions qui sont :

  • le SWAP
  • la DAO (enfin, les prémices)

La notion de SWAP

Un peu de théorie

Quand on parle de SWAP cela veut dire que nous allons échanger une cryptomonnaie A contre une crypto monnaie B au travers d'un échangeur.
Il existe maintenant une multitude d'échangeurs qui permettent de convertir une monnaie dans une autre.

Pour cet article, nous allons utiliser Uniswap, un échangeur décentralisé. Ces échanges se font par le biais de smart-contract qu'a mis en place la société Uniswap.
Pour qu'un jeton soit échangeable sur une telle plateforme, c'est qu'il y a eu un apport de liquidité. En effet, un jeton est disponible sur cette plateforme uniquement s'il a une valeur. Or, pour lui donner une valeur, il faut créer une pool de liquidité.
Par exemple, pour le jeton FWEB3, le créateur a créé une pool en mettant la paire FWEB/MATIC contenant un certain nombre de Matic (centaines de $) et d'un certain nombre de FWEB3.
Cette pool, en se créant, permet de notifier aux smart-contracts qu'un échange au sein de ce protocole est possible entres différents utilisateurs pour la paire de jetons/Crypto FWEB3/MATIC.
Ainsi, le seul moyen d'obtenir des FWEB3 c'est d'échanger des MATIC.

Si on veut utiliser un autre échangeur, il faudra bien entendu vérifier qu'il existe aussi une pool de liquidité contenant une paire de tokens contenant du FWEB3.

Passage à la pratique

L'idée c'est de manipuler un peu, il faut se rendre sur l'url suivante :
https://app.uniswap.org/#/swap?chain=polygon

Et suivre les quelques screenshots :

Il faut se connecter en étant bien sur le réseau Polygon !

uni1

Il faut indiquer à l'échangeur où se trouve le token FWEB3, ce n'est pas un token courant, il n'est donc pas visible.
L'adresse du token est la suivante : 0x4a14ac36667b574b08443a15093e417db909d7a3
Nous avons déjà vu cette adresse quand nous l'avions importée sur metamask.

uni2

Ensuite, il faut procéder à l'échange d'1 FWEB3 contre du MATIC (et non l'inverse).
On remarquera qu'il faut vaut 2200 FWEB3 pour faire un MATIC soit 1$ environ.

uni3

Une fenêtre metamask va s'ouvrir, il suffira de confirmer et d'attendre le retour, qui, comme je le rappelle, peut être positif ou négatif.
Note : pour avoir plus de chances que la transaction réussisse, il est possible modifier le coût du gas et d'en allouer plus

La notion de DAO (vote)

Explication

Tout l'intérêt du web3 c'est sa décentralisation, il existe pour cela des DAO (Decentralized autonomous organizations) , organisations autonomes décentralisées, dont le but est de pouvoir valider telle ou telle proposition sur un protocole... (par exemple le fait d'ajouter des liquidités, de faire des airdrops,...)
Pour faire partie d'une DAO, il faut posséder le token en vigueur ce qui nous donne un droit de vote.
Dans ce mini jeu proposé par FWEB, un simple smart-contract a été mis en œuvre pour permettre de pouvoir voter par "Oui" ou par "Non".
Ce vote est seulement possible si on possède plus de 100 FWEB3.

Pour voter, il va falloir se rendre à l'adresse du contrat, la plupart du temps, une belle interface web sera présentée pour faciliter les choses. Ce qui n'est pas le cas ici !
Le vote implique l'écriture d'une information dans la blockchain qui sera irréversible ! La donnée est dite immuable (ne peut être modifiée).
Mais c'est intéressant de comprendre où l'on peut trouver un smart-contract et comment interagir avec lui depuis la blockchain

L'explorateur d'une blockchain

Pour chaque blockchain, il est possible de consulter les différents éléments qui y transitent. On trouve les transactions, des blocs, les balances (le contenu du portemonnaie).
Avec le web3 tout est disponible, la plupart des applications sont opensource (libres de droits et copiables). Ainsi il est possible de voir énormément de choses.
Ce qui nous intéresse ici, c'est de regarder le contenu du contrat et interagir avec lui.

L'explorateur de Polygon se nomme polygonscan qui est disponible à cette adresse : https://polygonscan.com/

Le contrat que nous souhaitons visualiser lui est disponible à cette adresse : https://polygonscan.com/address/0x718ad63821a6a3611Ceb706f15971ee029812365

Sur cette page, tu peux voir (encadré en rouge)

  • La balance du contrat (oui un contrat peut contenir de l'argent)
  • l'ensemble des transactions avec le destinataire et l'émetteur avec l'id de la transaction.
  • le contrat
  • ...

contrat1

On peut remarquer que le Tnx Fee, le coût du gas est très variable pour la même opération !

Si on regarde d'un peu plus près le contrat, on observe :
Le nom du contrat, le code source, les bugs possibles, ....
contrat2

En cliquant sur Read Contract ou Write Contract; nous pouvons avoir accès à l'ensemble des fonctions inclues dans le contrat.
Par exemple, au moment de l'écriture de cet article, il y a eu 762 votants avec 73 % de votes Oui.
contrat3

Pour faire un vote, il faut passer par une fonction d'écriture du Smart-Contract afin de pouvoir écrire sur la blockchain.
Donc on se rend sur l'onglet "Write Contract" et on arrive sur cette vue.
contrat4

Là il faut se connecter avec son wallet avant de pouvoir écrire.
En cliquant sur Write une transaction est effectuée en demandant une confirmation.
contrat5

Attention, avant de confirmer il faut s'assurer que tu possèdes bien 100 FWEB3 Token sinon l'écriture va échouer et tu auras perdu le coût du gas..
Une fois la transaction effectuée, on reçoit une confirmation de metamask.

Et voilà une nouvelle étape effectuée.

Conclusion

Dans cette partie, nous avons vu deux notions fondamentales qui sont le swap et la DAO. Et nous avons également vu comment analyser les échanges sur une blockchain au travers de Polygonscan

Dans le prochain article, je vais parler de NFT (en minter un), du burn de token ainsi que de l'écriture d'un simple smart-contract donnant lieu à la création d'un token.