The BULBiMasks

Une collection #NFT créée par des Holders du projet TheCryptomasks 🎭

Liens directs

Smart Contract : Etherscan
DApp : https://www.thebulbimasks.xyz
Passerelle Web 2 : https://gateway.thebulbimasks.xyz

Fruit de l’imagination de BullBiDoo (le duo de choc formé par DMDOO et xBull-Bizarre), le projet The BULBiMasks représente à lui seul la force d’une communauté et la hype imprévisible (et incontrôlable) qui peut jaillir d’une idée.

Initialement, les BULBiMasks étaient de « simples déviations » (versions réimaginées puis générées par l’IA) des masks du projet Cryptomasks. Ces images non NFTs ont su trouver leur public puis tout s’est accéléré… BullBiDoo avec qui j’étais déjà en contact pour un futur projet, m’ont demandé s’il était possible de proposer une collection NFT dédiée à ces petits personnages… Le timing était serré mais ce fut bien évidemment accepté !

Merci RpGmAx d’avoir rendu tout ça possible 🫵 👹

On savait à quoi s’attendre en travaillant avec toi, mais tu as quand même réussi à nous surprendre par ton expertise inestimable et tes nombreux conseils dans tous les domaines liés au WEB3 👨‍💻💪

Bravo pour ta flexibilité, qu’on a mis à rude épreuve avec un double projet complexe, qui n’a cessé d’évoluer au grès des attentes de notre communauté.

Ce n’est que le début, on a encore du pain sur la planche 🤪💥

Aucun doute que ta présence dans la CoreTeam des CryptoBarjos contribuera à la réalisation de grandes choses 🧘🏽‍♂️

To be continued… 🤜 🤛

Conseiller technique

Une fois n’est pas coutume, j’apporte systématiquement mon expertise et mes réflexions à tout projet que je rejoins. J’y tiens !
Si BullBiDoo savaient précisément ce qu’ils souhaitaient faire, mon but était de leur expliquer « comment on allait le faire » et les pièges qu’il fallait éviter (ils sont toujours plus nombreux que ce que l’on croit).

La collection des BULBiMasks est un peu particulière car elle devait à la fois proposer du free mint (avec pourboire) pour les propriétaires des Cryptomasks (avec du 1/1 au niveau des IDs) tout en offrant la possibilité par la suite de proposer des NFTs additionnels, non liés aux Cryptomasks et voués à être soit mintés soit achetés sur le marché secondaire.

Il fallait aussi trouver une solution au fait d’avoir des réalisations et des reveals au gré des « phases ». Le tout de manière dynamique et transparente pour l’utilisateur. L’idée de développer une passerelle (Web 2) retournant les informations des dits NFTs fut ainsi proposée et adoptée.

Réalisation d'une passerelle Web2

Je l’expliquais juste au dessus, la plus grosse problématique était liée à la réalisation « au fur et à mesure » des différents BULBiMasks. Là où une collection classique dispose de l’ensemble de ses visuels pour faire un reveal en « one-shot », ici il fallait pouvoir proposer une collection évolutive avec des visuels par défaut (pour les BULBiMasks en « construction ») et des visuels pour ceux réalisés.

J’ai ainsi développé en PHP une petite passerelle Web 2 qui génère du JSON à la volée tout en permettant à BullBiDoo de venir injecter leur propre JSON lorsque BULBiMask était prêt ! La passerelle s’occupe aussi de retourner l’image correspondante.

L’idée étant d’utiliser cette passerelle jusqu’à ce que l’ensemble des visuels soient finalisés, pour enfin basculer en IPFS.

Réalisation du Smart Contract

Je l’évoquais plus tôt, cette collection a la particularité de proposer 2 types de mints : un free mint pour les propriétaires de Cryptomasks et un mint « classique » pour des BULBiMasks additionnels.

L’ensemble du smart contract a été pensé autour de cette idée avec du code dédié aux 1/1 (Genuine) et du code pour la partie additionnelle avec les Honorary/Collabs et les PiracyUri différentes avec leur propre verrouillage, mise en pause du free mint ou du mint standard, système de WL pour le mint standard… Tout a été fait pour couvrir un maximum de cas de figures.

Pour le mint 1/1, le SC a directement été rattaché à l’interface du SC d’origine des Cryptomasks, de façon à pouvoir s’assurer de la « bonne possession » du mask d’origine dans le wallet qui free mint.

Un compteur distinct et hors collection Genuine a été utilisé pour le mint « classique », de façon à organiser les différents NFTs et pouvoir assurer un 1/1 sans encombre (l’ID d’un 1/1 devant être réservé).

Enfin, le nécessaire pour les royalties a été mis en place, avec l’ERC-2981 & l’habituel Operator Filter d’OpenSea.
Un splitter de paiement a été intégré afin de pouvoir dispatcher les fonds liés aux royalties sur les différents wallets de l’équipe.

Réalisation de la DApp

Vitale pour la phase initiale du projet, la DApp devait à la fois présenter ce dernier mais aussi et surtout permettre aux propriétaires de Cryptomasks de faire un free mint par mask détenu.

L’accent a été mis sur la fluidité de la procédure, de façon à guider l’utilisateur de A à Z.
L’idée était aussi de lui suggérer de laisser un pourboire, afin de récompenser le travail de l’équipe.
Le responsive a été particulièrement travaillé afin d’avoir le meilleur résultat possible sur l’ensemble des supports (smartphones, tablettes, différentes tailles d’écrans…), c’était un impératif pour conserver une interface intuitive.

A noter que pour la première fois je suis parti d’un template (imaginé par DMDOO), refait à l’identique en React (ligne par ligne) auquel j’ai ensuite ajouté toute les fonctionnalités requises. C’était une façon de travailler très agréable et qui m’a permis de gagner pas mal de temps, temps qui était précieux au moment de la réalisation !

Mais ce n'est pas tout !

The BULBiMasks évoluant sans cesse, de nouvelles fonctionnalités sont prévues et du dev supplémentaire va être nécessaire. On se retrouve donc dans quelques temps pour une MAJ de cette fiche 🙂