Projects Category : Web 3
- Home
- Web 3
J'ai découvert RpGmAx sur les réseaux sociaux, grâce à son travail sur différents projets web3. Lorsque j'ai eu besoin d'un développeur pour mon projet, surtout pour renforcer la sécurité, je me suis naturellement tourné vers lui. Bien qu'il n'ait jamais travaillé avec la blockchain MultiversX, sur laquelle est basé mon projet, il a accepté de m'aider avec enthousiasme. Quelques jours (voire quelques heures) plus tard, l'application (dapp) était opérationnelle.
Au-delà de son efficacité, j'apprécie énormément sa réactivité et son soutien général. Il n'a jamais hésité à consacrer de son temps pour répondre à mes questions techniques ou m'aider à aborder certaines parties de mon développement. Ses conseils m'ont permis d'éviter de nombreuses heures de recherche et de complications.
J'espère pouvoir continuer à collaborer avec lui à l'avenir, car il apporte une valeur ajoutée considérable à mon projet ! Un grand merci à lui !Cryptortue
Honua Honu – Les Gardiens de l’île est un jeu Web 3 développé par Cryptortue.
Dans ce dernier, les joueurs font évoluer & combattre leurs Honu (tortues NFTisées).
Si la base du jeu utilise des technos plutôt Web 2 (PHP/MySQL), elle fait toutefois appel à l’API Web 3 de la blockchain MultiversX afin de récupérer des informations on-chain nécessaires.
Ce dernier, en plein développement et en constante évolution, était néanmoins en manque d’une ultime fonctionnalité pour permettre aux joueurs d’utiliser leur wallet afin de s’authentifier de manière sécurisée, et ça, c’était ma mission :)
dApp d'authentification
Premiers pas dans le développement front-end sur MultiversX, c’était l’occasion rêvée pour expérimenter et proposer quelque chose de fonctionnel et complet.
La dApp sous Next.js utilise les derniers standards proposés par MultiversX (connexion suivie d’une signature) ainsi que la librairie useElven qui a été légèrement forkée pour l’occasion notamment pour améliorer le workflow général qui, il faut bien l’avouer, souvent capricieux côté MultiversX…
Le joueur peut connecter son wallet, qu’il soit propriétaire (xPortal) ou alternatif (Ledger par exemple), entre autres…
Il dispose ensuite d’une session d’une durée de vie de 24h, lui permettant ainsi de revenir plusieurs fois dans la journée sur le jeu sans devoir recommencer le process global d’authentification. Un QR Code s’affiche automatiquement si le joueur est sur une connexion desktop, lui permettant d’accéder au jeu sur son téléphone (qui permet aussi de se connecter si nécessaire).
L’idée, et le challenge associé, était d’avoir une dApp dédiée à l’authentification (en JS) qui fait le lien avec le jeu par le biais d’une mini passerelle (développée elle aussi, en PHP). Ainsi, une fois connecté sur la dApp le joueur peut accéder au jeu (proposé sur une autre URL) et être correctement reconnu par ce dernier. Deux blocs indépendants mais communicants.
Le tout en respectant les règles sécuritaires, à la fois côté dApp et côté jeu qui refusera tout token incorrect ou expiré.
Accompagnement technique
Outre la dApp qui fut une mission certes très courte mais très enrichissante, j’ai proposé au fondateur du jeu mon accompagnement technique immédiat et futur.
Ainsi certains points plus traditionnels ont été aussi proposés/développés, qu’il s’agisse de choix technologiques (infrastructure, responsive…) ou de bonnes pratiques (réécritures d’URLs, workflows…).
Cryptortue sait qu’il peut compter sur mes conseils tout en lui laissant le champ libre vis à vis de son développement.
Un projet d’un passionné, à suivre bien évidemment !
MASKS Token
Le premier token social sur Optimism !
Liens directs
Site Web : https://www.masks.wtf
DApp : https://app.masks.wtf
Smart Contracts : $MASKS – Vesting – Airdrops
Pensé par TheCryptomath (fondateur du projet The Cryptomasks), le token MASKS permet notamment de tokeniser son engagement. L’usage premier, actuellement en place, étant d’offrir aux utilisateurs de Farcaster (réseau social Web 3) la possibilité de donner des pourboires, à la manière de ce que propose Degen (le premier token du type) tout en ajoutant de nouveaux cas d’usages au fur et à mesure. Récemment le token a été utilisé comme moyen de paiement pour un mint et l’opération va être reconduite via différents partenaires.
En charge de la création des smart contracts, de la dApp (tout-en-un), de l’API à destination des développeurs tiers, des mécaniques de snapshots mais aussi de la gestion technique du projet (un autre collègue développeur agissant sur la partie off-chain liée à Farcaster), ce projet est l’occasion pour moi de me lancer de nouveaux défis :)
Smart Contracts
Actuellement au nombre de 3, les différents smart contracts permettent à la fois au token d’exister (ERC-20) mais aussi à la team et aux investisseurs initiaux de profiter d’un vesting (et/ou cliff) tout en offrant la possibilité aux utilisateurs de Farcaster (pour le moment) d’obtenir régulièrement un airdrop associé à leur engagement sur le réseau.
En effet, à chaque fin de saison, les MASKS off-chain deviennent des $MASKS (on-chain) via un mécanisme de snapshot et de claim imaginé de façon à être pérenne.
Prochainement, un second SC d’airdrops à destination des fournisseurs de liquidité sera utilisé, fonctionnant de manière similaire au premier.
Plus que les smart contracts, c’est aussi toute la présence on-chain (identification auprès d’Etherscan, création des pools de liquidités initiales, analyses diverses…) qui a été réalisée.
dApp
Application complète, avec des composants aussi bien serveur que client, la dApp du projet agit en tant que couteau suisse.
De nombreux éléments liés au projet ont aussi été développés. Qu’il s’agisse des outils de snapshot, du suivi de data on-chain ou de la récupération d’infos directement sur les nodes Farcaster, ils sont nombreux et en constante augmentation.
Avec plusieurs dizaines de millions de requêtes par mois (au moment de la rédaction), l’accent a aussi été mis sur l’optimisation générale.
Airdrop
Cette page permet à l’utilisateur connecté d’obtenir ses informations en live, de vérifier son éligibilité à chaque fin de saison mais aussi de consulter le classement des utilisateurs. Se voulant plus complète que les « solutions concurrentes », celle-ci dispose aussi de liens vers les profils Farcaster des utilisateurs, répliqués directement dans l’application elle-même.
A chaque fin de saison, l’utilisateur éligible a la possibilité de claim on-chain le montant de MASKS automatiquement converti, le tout via un process de snapshot sécurisé.
Liquidity Mining
Ici l’utilisateur peut consulter la totalité des fournisseurs de liquidité dans la pool Uniswap pour laquelle nous avons mis en place des incentives. Via un système de snapshot « homemade » finement réglé, tout au long de la journée les wallets obtiennent des MASKS qui pourront être transformés en $MASKS en fin de saison.
API
Mise à disposition d’une API publique complète permettant aux développeurs tiers (et ils sont nombreux sur Farcaster) d’utiliser les données internes dans leur propres applications / frames (mini applications Farcaster). Particulièrement appréciée, cette dernière est en constante évolution !
Stats
Quoi de mieux que du visuel pour représenter l’activité autour du token au sein de Farcaster ?
Pourboires par jour/semaine, utilisateurs uniques par jour/semaine sont les premières informations que nous avons décidé d’afficher, d’autres viendront par la suite.
Un projet en évolution constante
Ce projet étant relativement nouveau (deux mois d’existence environ), son évolution est continue.
Renforcement de l’existant, ajout de nouvelles fonctionnalités, de nouveaux cas d’usages (le tip sur Discord venant d’être intégré), c’est l’occasion rêvée d’explorer un champ des possibles !
Cette fiche sera mise à jour autant de fois que nécessaire :)
Tickets Print
Des tickets NFTs offrant la possibilité d’obtenir des versions physiques des œuvres de Clément Mougel !
Dernier né de l’imaginaire de l’artiste Clément Mougel, le projet Tickets Print a un côté Charlie et la Chocolaterie !
500 tickets mintable de manière aléatoire, 484 tickets bronze, 15 d’argent et bien entendu un ticket d’or ;)
Une fois en possession d’un ticket, l’utilisateur peut le « burn » afin de réclamer une version physique (toile) d’une œuvre éligible de Clément Mougel (qu’il doit détenir dans son wallet). La rareté du ticket influant sur le type de « print » qu’il va recevoir.
D’une idée d’une collection de Ticket Print pour Claim des Prints de NFT détenus, Rpgmax a poussé le concept d’une Dapp permettant de tout gérer on chain (éligibilité, FreeMint, Claim et check disponibilité du Print) jusqu’à sa réalisation technique. Des conseils au développement quelque soit la complexité! Une vraie valeur ajoutée pour la team projet (suivi, gestion et évolution) que pour nos holders (transparence, sécurité et facilité)! Un énorme merci!!!
La Team bycmLAB
Smart Contract
Déployé sur Polygon, le smart contract assure à la fois le mint aléatoire, qui reste ouvert jusqu’à épuisement des stocks, mais aussi la partie claim des versions physiques..
Cette dernière fonctionne au travers de collections autorisées par l’équipe bycmLAB.
Compatible avec les collections ERC-721 (1/1) mais aussi ERC-1155 (copies multiples), le SC autorise aussi bien le claim d’une œuvre unique que le claim d’une œuvre en édition multiples (avec des limitations configurables).
Le SC permet aussi de remonter facilement l’information des claims réalisés, afin de signaler à tout (futur) propriétaire d’une œuvre si cette dernière est toujours imprimable sur toile.
dApp
La dApp propose 3 fonctionnalités distinctes, le mint (tant que ce dernier est possible), la vérification d’éligibilité listant les collections compatibles et vérifiant on-chain le statut d’un NFT, et le claim en lui-même.
La partie mint était basée sur plusieurs phases (comme bien souvent) avec notamment du free mint et des phases sous liste blanche.
Concernant le claim, celui-ci s’effectue de manière intuitive via un système en 4 étapes.
- L’utilisateur sélectionne dans son wallet une œuvre compatible qu’il souhaite obtenir en version physique.
- Il choisit ensuite le ticket print qu’il souhaite « burn » (utiliser).
- Il valide le tout, après confirmation, via une transaction on-chain.
- Enfin, il complète un formulaire à destination de l’équipe du projet tout en effectuant une vérification de propriété du wallet (afin de s’assurer de la légitimité de la demande, multichain oblige).
Vision long terme
Ce projet a été imaginé et développé afin de pouvoir s’inscrire sur le long terme. Qu’il s’agisse de futures collections à implémenter ou bien encore une potentielle extension de tickets bronzes une fois le supply actuel terminé, tout a été pensé en amont & et en collaboration avec le reste de l’équipe.
Systématiquement proposé, mon accompagnement technique me permet d’orienter le projet vers les idées les plus adaptées et d’éviter les pièges liés au Web 3 en règle générale.
Marmottoshis v4
Une évolution sans fin 😉
On saute une version en passant directement de la v2 à la version 4 du projet !
En effet, pas mal de choses depuis, dont l’implémentation d’une fonctionnalité bientôt disponible qui justifie le passage en v4 ;)
- Implémentation d’une nouvelle fonctionnalité « Adopt A Marmot » avec son propre Smart Contract sur Arbitrum.
- Implémentation d’une future fonctionnalité « MarmottoShow » bientôt disponible…
- Migration importante des librairies utilisées vers une version majeure plus récente.
Breaking change oblige, une bonne partie du code de la dApp a du être réécrit, à nouveau >< - Réécriture puis fusion des serveurs Node.js implémentés dans la v2 avec pour objectif de décentraliser totalement ces derniers.
- Nombreuses optimisations du code et de l’UI. Comme toujours :)
Toujours un réel plaisir de travailler avec RpGmAx, en veille technologique permanente, il est proactif sur l'existant tout en y intégrant des évolutions.
Doté de nombreuse compétences techniques il apporte également de la fluidité dans les échanges entre membre du staff technique.
Bref je ne peux que recommander les services de RpGmAx (tant que vous le laissez dispo quand j'en ai besoin :p)DocMarmott (fondateur)
Adopt A Marmot
Nouvelle fonctionnalité déployée sur le réseau Arbitrum, Adopt A Marmot permet à la team du projet de mettre en « adoption » des marmottes (en stock ou rachetées sur le marché secondaire). Les futurs parents peuvent tenter de faire une adoption en effectuant un ou plusieurs dons (en fonction des conditions de l’adoption déterminées dans le smart contract réalisé par mes soins).
La team peut ensuite réaliser un tirage au sort qui va déterminer un heureux élu !
Mélangeant aléatoire et gamification, notamment au travers d’une interface dynamique et visuelle (avec une forte inspiration « Tamagotchi », désolé ^^), cette nouvelle fonctionnalité permet de créer un cercle vertueux entre vendeurs et acquéreurs à petit budget.
MarmottoShow
Pas encore dévoilée publiquement, cette nouvelle fonctionnalité arrivera prochainement sur une troisième blockchain, faisant de Marmottoshis le projet réalisé avec le plus de blockchains cohabitant dans la même dApp !
J’ai eu le plaisir de créer une interface sobre et efficace adaptée, qui sera révélée le moment venu ;)
Legends of Karnoa
Le RPG on-chain de Cryptocademia.
Liens directs
Site Web : https://play.cryptocademia.com
Smart Contracts : Heroes Unrevealed – Avatars – Items – Grimoires – Consumables – Staking
Initié en janvier 2024, Legends of Karnoa est le RPG on-chain rattaché au projet Cryptocademia.
Au programme :
- 6 smart contracts dont un dédié au staking permettant au joueur d’équiper son personnage.
- Chaque avatar, objet, consommable est un NFT à part entière.
- Une interface utilisateur moderne, responsive, dynamique et animée, mimant ce que l’on pourrait retrouver dans un jeu vidéo « conventionnel ».
- Un rendu temps réel lors de l’équipement de son personnage. Chaque asset a été réalisé par l’artiste NoNegocio et de très nombreuses variantes ont été implémentées afin d’avoir un rendu « clean » quel que soit l’équipement porté !
- De nombreuses fonctionnalités (boutique, gestion de son personnage, forge, arène, classement)…
- Des transactions 100% gas-less.
- Un jeu entièrement traduit (français/anglais).
Développé en solo de A à Z (smart contracts, dApp, gateway), ce projet est incontestablement le plus complet de mon portfolio.
Celui-ci représente des mois de travail, je vais donc tenter de synthétiser ici ce qui a été réalisé.
Un jeu entièrement web3 avec quelques intéractions web2 et une blockchain invisible pour les users. Projet encore en cours de changement/migration/développement mais Rp répond à toutes nos attentes jusqu'à présents ! Un projet bien complexe qui nous permet de monter en compétences avec lui.
CryptNaAb (fondateur)
Legends of Karnoa se veut accessible à tous. La blockchain est un outil, et nous souhaitions une expérience utilisateur fluide sur la blockchain, sans que les utilisateurs n'aient à interagir directement avec elle. Une fois de plus, RpGmAx a su répondre à toutes nos demandes pour ce projet, en intégrant des solutions invisibles et efficaces. Grâce à son expertise, nous avons pu offrir une interface intuitive et agréable, permettant à chacun de profiter pleinement du jeu sans se soucier des aspects techniques sous-jacents.
Yoz (fondateur)
Smart Contracts
Chaque smart contract permet à un type d’asset d’être identifiable on-chain, qu’il s’agisse d’un avatar (personnage), d’un équipement voire d’un objet provenant eux-mêmes de grimoires, la totalité des éléments du jeu sont NFTisés et transférables/revendables.
Un smart contract de staking permet au joueur de définir le personnage qu’il souhaite utiliser et de « sauvegarder » son équipement. C’est ce smart contract qui retourne les informations vitales au jeu, notamment pour les combats.
Déployés sur opBNB (blockchain rapide et peu coûteuse de la BNB Chain), ces derniers communiquent ensemble par le biais d’opérateurs, rendant ainsi possible le côté gas-less (sans frais) des transactions pour le joueur.
Note : un projet de migration vers Polygon est prévu avec de nouveaux défis techniques liés à l’account abstraction.
dApp
Après une brève authentification, directement rattachée au site Cryptocademia (sous WordPress), la dApp se voit attribuer un token sécurisé afin de pouvoir communiquer avec la gateway (dont j’avais déjà parlé sur la fiche du projet) et proposer au joueur une expérience fluide mêlant transactions on-chain et off-chain.
Le joueur peut profiter d’une interface totalement traduite (français/anglais) lui permettant d’accéder aux différentes fonctionnalités du jeu.
Boutique
Qu’il s’agisse des Heroes Unrevealed (avatars NFTs non dévoilés) ou de grimoires permettant d’obtenir équipements & objets divers, la boutique est un lieu incontournable pour le joueur qui dépense ainsi les deux monnaies du jeu (ASTRALIA/EZTIA).
Des remises temporaires ou adaptées au statut de l’utilisateur (holder de collections Genesis) peuvent être activées.
Inventaire
Reflet de ce qu’il se passe on-chain, l’inventaire offre au joueur une interface réactive et ergonomique, quel que soit l’appareil utilisé (PC, tablettes, smartphone). Les statistiques sont calculées en temps réel tout comme le rendu du personnage qui évolue au gré des changements d’équipement. Un bouton permet d’enregistrer les changements, exécutant alors un staking des éléments concernés.
La partie droite permet notamment d’ouvrir des grimoires ou de dévoiler (dynamiquement et aléatoirement) des Heroes Unrevealed. Le tout est totalement animé.
Forge
Elle aussi animée mais aussi modulaire, la forge permet au joueur de recycler équipements, objets et prochainement avatars afin d’en obtenir de nouveaux de meilleure qualité. L’UI évolue afin de continuellement s’adapter aux choix de l’utilisateur.
Liée à la gateway (comme 100% des fonctionnalités du jeu), la forge fait ensuite appel à des fonctions des smart contracts concernés pour burn/mint de nouveaux NFTs.
Arène
Fonctionnalité centrale du jeu, l’arène offre la possibilité aux joueurs de se mesurer à de terribles adversaires.
Ces derniers sont pré générés à chaque nouvelle saison puis, à chaque combat, viennent s’adapter dynamiquement au joueur (niveau, stuff…) de façon à rendre chaque combat 100% unique !
Un déroulé du combat automatisé et calculé côté gateway est alors affiché au joueur avec des actions qui défilent à l’écran jusqu’à l’issue du combat. Le joueur a la possibilité d’accélérer ce dernier voire de le passer totalement, tout comme le voir à nouveau.
Les avatars (joueur et adversaires) sont générés dynamiquement en tenant compte de la totalité de l’équipement porté.
De plus le rendu visuel (sang) évolue en fonction des points de vie restants. Enfin, le joueur peut activer le son et ainsi profiter d’une expérience complète, sur PC ou smartphone.
Enfin, les points gagnés lui permettent notamment d’améliorer leur rang au sein du classement.
Note : Une arène PvP est prévue dans une version future du jeu.
Gateway
La totalité du jeu est exécutée côté serveur, sur la fameuse « passerelle » réalisée depuis les débuts du projet.
Outre la sécurité renforcée et la possibilité de proposer du gas-less via des opérateurs de jeu, cela ouvre la voix à de nombreuses possibilités futures, un jeu « 3D » pourrait ainsi utiliser les mêmes données et offrir au joueur une version revisitée du jeu, avec les mêmes « règles » de base. Un projet tiers pourrait aussi venir consulter certaines informations à propos du joueur.
La gateway a été conçue pour dissocier totalement le code source du jeu (avec les formules complexes liées ou encore le rendu visuel des avatars) du reste. LoK est ainsi un jeu reposant à la fois sur des données on-chain & des données off-chain mixées ensembles via la gateway pour enfin être retournée au client (dApp ou autre) de manière optimisée & sécurisée.
Un très bon exemple étant la création d’une frame Farcaster (mini app, exemple ci-contre) venant dynamiquement récupérer le visuel final du personnage de l’utilisateur !
Et ce n'est pas terminé...
Legends of Karnoa n’en est qu’à ses débuts…. Outre la présentation succincte ci-dessus, le projet ne cesse d’évoluer.
La roadmap est conséquente, les fonctionnalités à venir nombreuses (annoncées ou non) et la migration vers Polygon couplée à l’intégration de l’account abstraction font de LoK le projet le plus complexe jamais réalisé de mon côté !
Aristocrats Battle – Phase II
Il faut sauver le soldat Ryan !
Lorsque la team bycmLAB m’a parlé de relancer le mint (temporairement stoppé) d’une collection de Clément Mougel dont l’ancienne team technique avait déserté, j’ai tout de suite regardé l’état des lieux aussi bien au niveau du Smart Contract / dApp qu’au niveau de la génération et du stockage des NFTs… Bienvenue dans la jungle 😅
Si le Smart Contract pouvait être « administrable » (après récupération de l’ownership), la dApp était à redévelopper (aucune source) et pire encore la génération des NFTs (métadonnées et visuels) était à refaire totalement, tout comme le stockage de ces derniers.
Les NFTs déjà « revealed » ne disposaient tout simplement pas des métadonnées attendues et le tout était stocké sur un serveur fermé depuis.
Véritable « opération sauvetage« , du moins c’est comme ça que je l’ai vécue, mais opération nécessaire pour tout remettre d’aplomb pour cette collection qui le méritait !
Génération des NFTs et stockage IPFS
Si les 1000 visuels étaient tous présents, je n’avais aucun fichier JSON associé. Ces fichiers sont générés habituellement en même temps que les visuels (lors de la randomisation) mais ici le seul fichier que j’avais à ma disposition était un CSV historique illisible.
Après littéralement plusieurs jours de traitement minutieux, à grand renfort de scripts Python pour parser les données et d’échanges avec la team pour proposer quelques changements & comptabiliser/corriger certaines informations, j’ai pu obtenir un fichier CSV nettoyé et exploitable ! Ce dernier comprenait notamment le lien ID NFD <> ID IMG qui n’existait jusqu’alors que pour les NFTs mint en phase I.
Couplé à un modèle réalisé sur mesure et un ultime script dédié, j’ai pu générer les 1000 JSON tout en prenant en compte le statut revealed/unrevealed des NFTs déjà mint et de ceux à venir (et ce pour la phase II et les éventuelles suivantes).
Bref, un énorme travail particulièrement chronophage pour obtenir ces fameuses métadonnées tant attendues, notamment par les « holders » de la phase I qui n’avaient aucune idée des attributs de leurs NFTs :/
Enfin, un stockage IPFS à la fois des JSON et des visuels (qui pour rappel n’existaient plus, la faute à un stockage HS) et cette partie était enfin sécurisée.
dApp
L’ancienne dApp n’était pas exploitable, je n’avais pas les sources et il fallut donc faire avec un SC déjà déployé sur mainnet.
Redéploiement partiel de mon côté sur testnet par sécurité et pour réaliser certains tests de bon fonctionnement.
La dApp devait mimer une phase de mint « indépendante » avec son propre supply, la phase II étant très différente de la phase I (prix et possibilités pour le « holder ») tout en permettant du mint multiple et limité.
Reveal et futur de la collection
Une fois la phase II sold out, un reveal ciblé a eu lieu avec des métadonnées dévoilées pour ces fameux nouveaux NFTs tout en gardant bien cachés ceux à venir pour une éventuelle phase III.
Il reste en effet 350 NFTs pouvant être mintés et connaissant Clément Mougel et sa relation « fusionnelle » avec ses créations (les artistes…), ils verront le jour à un moment ou un autre, j’en suis persuadé… En tout cas tout est prêt de mon côté ! 😊
Cryptocademia
Le premier Learn 2 Earn français dédié à l’écosystème Web 3.
Liens directs
Site Web : https://www.cryptocademia.com
DApp de gestion de wallets : https://wallet.cryptocademia.com
Treasure Chests : https://treasurechests.cryptocademia.com
Smart Contracts : Treasure Keys & Treasure Chests
Après deux collections NFTs réussies (B3ar Market & B4D Bull), l’équipe a décidé de passer à la vitesse supérieure afin de proposer Cryptocademia : la première plateforme de Learn to Earn française dédiée à l’écosystème Web 3, rien que ça !
Si B3ar Market signait mes débuts en tant que développeur Web 3, Cryptocademia me permet de poursuivre dans cette voie et de catalyser tout ce que peut représenter le Web 3 pour un développeur.
Il s’agit incontestablement du projet le plus complexe et le plus complet sur lequel je suis intervenu et sur lequel je vais encore bosser durant plusieurs mois ! Découvrons ensemble les principaux points sur lesquels j’ai travaillé.
Un projet très complexe mélangeant web2 et web3 dans le même système avec les contraintes associées. Rp a réussi à braver les difficultés les unes après les autres nous permettant de déployer un projet de qualité (qui est encore en développement pour certaines parties). Nous sommes très content de l'avoir dans l'équipe.
CryptNaAb (fondateur)
J'ai eu le plaisir de collaborer avec RpGmAx sur Cryptocademia, un projet ambitieux à mi-chemin entre le Web2 et le Web3, visant à éduquer les néophytes au monde de la blockchain. RpGmAx a su surmonter de nombreuses contraintes techniques pour permettre une intégration fluide de multiples fonctionnalités : intégration Web2/Web3, NFTs, dApp de récompenses, tout y passe ! Il respecte toujours les délais annoncés et délivre un travail de grande qualité.
Yoz (fondateur)
Gestion de l'infrastructure globale
Cryptocademia est un projet particulier, il combine en effet à la fois un socle fort en Web 2 (via un site Wordpress dédié aux cours) mais aussi de nombreuses fonctionnalités Web 3 (détaillées plus bas). En charge de la totalité de l’infra, j’imagine et met en place le nécessaire depuis plusieurs mois afin de permettre la « Web3isation » de ce dernier.
Serveur LAMP et sa maintenance, serveur Redis, serveur Node.js, passerelles & interconnexions diverses… Le tout sans oublier l’optimisation générale qui a permis au site de fortement gagner en performances depuis sa création. Un véritable projet tout-en-un.
Serveur Node.js "Gateway"
Pierre angulaire du projet, un serveur Node.js a été créé afin de permettre un dialogue continu entre le site WordPress, les nombreux sites annexes et les différentes blockchains utilisées derrière. C’est grâce à ce serveur que les DApps satellites, entièrement Web 3, peuvent reconnaître et interagir avec le profil Web 2 de l’utilisateur (côté WordPress).
Débuté en septembre, celui-ci a régulièrement évolué pour faire face aux différents défis techniques rencontrés.
Note : sécurité oblige, il n’est pas possible de partager un extrait du code source.
DApp Cryptocademia Wallet
Première étape indispensable dans la « Web3isation » du site, la possibilité pour l’utilisateur de rattacher un ou plusieurs wallets à son profil. Ceci est rendu possible via une DApp satellite reconnaissant automatiquement l’utilisateur connecté sur le site principal.
Ajout d’un wallet « externe« , qu’il soit hot ou cold, mais aussi la possibilité pour l’utilisateur d’obtenir un wallet généré à la volée (intégration de Web3Auth), permettant ainsi d’onboarder des profils totalement novices qui obtiennent un wallet dont ils peuvent exporter la clé privée à tout moment (une fois les bases assimilées).
Avec une interface simple et intuitive, l’utilisateur peut gérer à sa guise le(s) wallet(s) qu’il souhaite rattacher à son profil, le tout de manière totalement sécurisée avec des signatures off-chain assurant la légitimité de chaque demande.
Ces wallets sont ensuite utilisés sur d’autres DApps mais aussi pour le passive earning (cf plus bas).
Treasure Chests (SCs + DApp)
Qui dit Learn to Earn dit possibilité d’obtenir des récompenses, et c’est là qu’intervient Treasure Chests.
Lancé début décembre, cette fonctionnalité marque un tournant important dans la feuille de route de Cryptocademia en permettant ainsi aux utilisateurs de la plateforme de convertir leurs Eztia (monnaie off-chain obtenue sur la plateforme) en clés NFTisées échangeables !
Plateforme annexe et véritable terrain de jeu pour tout développeur Web 3, Treasure Chests c’est :
- Différents Smart Contracts (Clés, Coffres…) communiquant ensembles.
- Une DApp Next.js complète et optimisée récupérant de nombreuses informations directement on-chain.
- Une interface d’administration intuitive permettant à l’équipe Cryptocademia de gérer les coffres & tirages au sort (on-chain).
- Une conversion Eztia > clés NFTs totalement transparente pour l’utilisateur (0 frais, 0 transaction) et ce par le biais de la création d’un wallet « opérateur » dédié agissant dans l’ombre (via la « Gateway » Node.js).
- La possibilité pour l’utilisateur d’obtenir la crypto de son choix en quelques clics (via l’intégration de Transak).
Passive Earning
Seconde fonctionnalité importante dans la « Web3isation » de la plateforme : la possibilité d’obtenir un rendement passif en détenant des NFTs des collections B3ar Market & B4D Bull (puis par la suite ceux de la future collection dédiée au jeu).
La « gateway » détecte automatiquement les NFTs détenus et les gains associés à ces derniers et, de manière totalement automatisée, distribue des uEztia chaque nuit. L’utilisateur peut claim ceux-ci à tout moment afin d’obtenir des Eztia.
Un plafond existe afin d’amener l’utilisateur à claim régulièrement en accédant à son tableau de bord.
Le plus gros est à venir...
2024 s’annonce être l’année charnière pour Cryptocademia !
En effet, la gamification va atteindre un nouveau palier en permettant aux utilisateurs de la plateforme d’obtenir un avatar qu’ils pourront équiper et faire combattre, à la manière d’un RPG, mais 100% on-chain.
Smart Contracts dédiés aux personnages, aux équipements, au staking. Les défis techniques vont être nombreux et sont l’objet de ma prochaine grosse mission au sein de Cryptocademia :)
The Cryptomasks Custom
Générateur de PFP basé sur les NFTs détenus.
Liens directs
Halloween : https://halloween.thecryptomasks.xyz
Noël : https://xmasks.thecryptomasks.xyz
Pepe : https://pepe.thecryptomasks.xyz
Collection annexe à celles des Cryptomasks et des Zodiacmasks, la collection Cryptomasks Custom permet à tout propriétaire d’un mask d’obtenir un exemplaire d’un accessoire personnalisé saisonnier. Après une première édition nommée « Maskalavera » sortie pour Halloween, un hoodie spécial baptisé « Xmasks » a été créé pour Noël.
En charge de la réalisation des DApps associées, ces dernières (qui seront probablement fusionnées à terme) permettent de lister les NFTs éligibles de l’utilisateur et de générer à la volée une version modifiée utilisable en tant que PFP.
Si la première version ne nécessitait aucun prérequis pour générer l’image, la seconde s’assure que l’utilisateur dispose à la fois du mask mais aussi de l’accessoire servant à générer la PFP, les deux étant bien évidemment des NFTs.
L’interface est intuitive et l’expérience globale est d’une fluidité exemplaire.
Un grand bravo à RpG pour avoir développé cet outil unique et engageant!TheCryptomath (fondateur)