Despliegue de un token CRC721 en Conflux

El despliegue de un token CRC721 en la red Conflux es bastante similar al despliegue de cualquier contrato inteligente en cualquier otra blockchain. Sin embargo, se produce un pequeño giro al interactuar con la blockchain Conflux ya que sus métodos rpc difieren ligeramente de los métodos convencionales Eth JSON-RPC. Por lo tanto, Conflux tiene una variedad de herramientas que se desarrollan para interactuar con la cadena Conflux de la manera más fácil. Algunos ejemplos son:

Este tutorial se centra en el uso de Hardhat y js-conflux-sdk para escribir, desplegar e interactuar con un contrato inteligente compatible con CRC721 en la red de prueba Conflux.
Requisitos:

  • Una cartera Conflux . Puedes conseguir una aquí y usar el Faucet de Conflux para obtener CFX de prueba.

Clona este repositorio para tener la plantilla del esqueleto. Ten en cuenta que se puede generar una estructura de carpetas similar ejecutando npx hardhat init en una carpeta vacía y seleccionando la opción avanzada Typechain.

Tenga en cuenta que hardhat instalará algunos archivos y módulos como hardhat.config.ts y ethersjs que no se utilizan en este tutorial, podemos ignorarlos.

Vamos a sumergirnos!

En primer lugar, se necesita una comprensión de alto nivel del contrato inteligente. Para facilitar las cosas, hemos utilizado el estándar ERC721 de Openzeppelin, creamos un nuevo contrato llamado CRC721 que hereda directamente del contrato ERC721 ya hecho de Openzeppelin.

image

Esto significa que podemos seguir escribiendo las funciones adicionales para nuestra NFT sin preocuparnos de las funciones básicas. El contrato tiene un constructor que establece el nombre y el símbolo de la NFT y también establece el URI del token.

Por último, permite a cualquier persona acuñar un NFT a una dirección de forma gratuita

image

Ahora, vamos a sumergirnos en el despliegue y el script de interacción del contrato.
Para desplegar el contrato token, usaremos el js-conflux-sdk en lugar de ethersjs para crear nuestro contrato y objetos de red. Ya que estamos escribiendo nuestros scripts de despliegue en typescript, necesitamos importar todos los módulos necesarios, lo que incluye el abi y el bytecode de nuestro contrato CRC721 compilado y el propio módulo Conflux.

El abi y el bytecode de un contrato se generan automáticamente cada vez que se ejecuta un script hardhat o se compila un contrato, se guardan en la carpeta de artefactos.

Para interactuar con Conflux, necesitas inicializar una instancia de red usando el sdk de Conflux. En este ejemplo, estamos inicializando una instancia de testnet

image

Ahora podemos utilizar cfx para crear una nueva instancia de contrato y enviar la transacción de despliegue

Desde el recibo de la transacción, podemos obtener la dirección de nuestro contrato recién desplegado y pasar a interactuar con él

image

Para ejecutar el script, hacemos:

Hemos desplegado con éxito un token CRC721 en la red Conflux testnet usando hardhat y js-conflux-sdk.
Para entender y aprender más sobre los métodos de js-conflux-sdk, por favor revisa la documentación en github.
Un ejemplo ha sido desplegado y verificado aquí.

¡Por favor, permanezcan atentos a nuestros canales !
Conflux Network Linktree | Linktree
Artículo traducido por @Cryptoshimy y revisado por @Alex

1 Like