Guía completa para construir una plataforma de intercambio NFT descentralizada desde cero

robot
Generación de resúmenes en curso

Implementar desde cero una plataforma de intercambio NFT Descentralización

Para los NFT del protocolo ERC-721, ¿cómo se puede lograr la Descentralización en el comercio? Actualmente, la mayoría de los intercambios de NFT utilizan un método de órdenes para realizar transacciones, similar a exhibir productos en las estanterías de un supermercado, donde los compradores pueden comprar si consideran que el precio es adecuado.

Este artículo logrará el intercambio descentralizado de NFT mediante la redacción de contratos inteligentes y una simple página frontal. Es importante tener en cuenta que el contenido de este artículo es solo para referencia de aprendizaje y no es adecuado para su uso directo en un entorno de producción.

NFT(Token No Fungible)Introducción

NFT es un token no fungible que sigue el protocolo ERC-721, cada Token es único. Los NFTs generalmente muestran diferentes imágenes en la billetera, y cada grupo de NFTs tiene un ID único para diferenciarlos.

Debido a las características de los NFT, no se puede establecer un precio a través de una curva de precios como se hace con los tokens ERC-20. Por lo tanto, el método de negociación más común en la actualidad es utilizar un libro de órdenes.

Serie para principiantes en Web3: implementar un DEX de NFT desde cero

Modo de comercio de libro de órdenes

En el modo de libro de órdenes, el precio de los productos es establecido por personas, a diferencia de algunos DEX que calculan el precio a través de curvas de precios. El libro de órdenes generalmente se divide en dos modos de negociación:

  1. Orden de precios: el vendedor establece el precio de venta y el comprador puede comprar si lo considera adecuado.

  2. Orden de compra: el comprador emite una orden de compra, el vendedor puede vender si considera que el precio es adecuado.

Normalmente, el precio de una orden de compra será inferior al de una orden de precio fijo. Este artículo presenta principalmente el método de transacción de órdenes de precio fijo.

Serie para principiantes de Web3: Crear un DEX de NFT desde cero

Funciones básicas de la plataforma de intercambio de NFT Descentralización

Una plataforma básica de NFT de Descentralización debería incluir las siguientes funciones:

  1. Listar productos: poner el NFT en la plataforma a precio fijo
  2. Compra de productos: compra según el precio del NFT
  3. Cobro de comisiones: se cobra un porcentaje del precio de la transacción.

proceso de listado de productos

  1. Frontend: El usuario selecciona el NFT y establece el precio, hace clic en listar.
  2. Contrato: el usuario autoriza la operación del contrato NFT

Es necesario mantener una tabla de mapeo de precios de productos listados por los usuarios en el contrato. Esta parte de los datos también puede ser almacenada en un servicio centralizado para aliviar la carga del contrato, pero este artículo la mantendrá dentro del contrato.

Proceso de compra de productos

  1. Frontend: El usuario selecciona el NFT que desea comprar y hace clic en comprar
  2. Contrato: Transferir los fondos del usuario al vendedor, NFT al comprador

Serie para principiantes en Web3: Crear un DEX NFT desde cero

Implementación de una plataforma de intercambio NFT descentralizada

Esta sección implementará desde cero una plataforma de intercambio NFT Descentralización.

1. Crear contrato NFT

Para fines de prueba, podemos usar Remix para desplegar rápidamente un contrato NFT del protocolo ERC-721. Por supuesto, también podemos usar un contrato NFT ya preparado.

Serie para principiantes en Web3: crear un DEX de NFT desde cero

2. Redacción del contrato de la plataforma de negociación

Los contratos de la plataforma de negociación deben incluir los siguientes métodos principales:

2.1 Vendedor sube NFT

Proceso de listado:

  1. El usuario elige NFT
  2. Establecer precio ( en moneda estable o ETH )
  3. Autorizar NFT al contrato

El método de listado necesita:

  1. Verificar la propiedad del NFT
  2. Añadir registro de listado
  3. Activar el evento de listado

Serie para principiantes en Web3: crear un DEX de NFT desde cero

2.2 El comprador compra NFT

Proceso de compra:

  1. Leer datos de NFT desde listings
  2. Calcular y deducir la tarifa de transacción
  3. Transferir NFT al comprador
  4. Disparar evento de compra

Serie para principiantes en Web3: implementar un DEX de NFT desde cero

2.3 Cancelar listado

Simplemente establezca el campo isActive correspondiente al NFT en listings como false.

Serie para principiantes en Web3: implementando un DEX de NFT desde cero

2.4 Retiro de tarifas

Retirar las tarifas acumuladas en el contrato a la dirección especificada.

Serie para principiantes de Web3: implementar un DEX NFT desde cero

3. Desarrollo del frontend de la plataforma de trading

Herramientas principales utilizadas:

  • Ant Design Web3: conectar billetera, mostrar NFT tarjetas
  • Wagmi: interacción con la cartera
  • Next.js + Vercel: despliegue del proyecto

El frontend debe incluir tres páginas: Mint, Buy y Portfolio.

3.1 Conectar billetera

Utilizar el componente de conexión de Ant Design Web3 para implementar la función de conexión de billetera.

Serie para principiantes en Web3: crear un DEX de NFT desde cero

3.2 Página de Mint

Utilizado para acuñar NFT de prueba, llamando al método useWriteContract de wagmi para interactuar con el contrato.

Serie para principiantes de Web3: implementar un DEX de NFT desde cero

3.3 Página de Portafolio

Gestionar los NFT de los usuarios, implementando funciones de listado y deslistado. Utilizar la API de opensea para obtener la lista de NFT de los usuarios y llamar al contrato para determinar el estado de listado del NFT.

Serie para principiantes en Web3: Crear un DEX de NFT desde cero

3.4 Página de Compra

Mostrar todos los NFT en la plataforma y realizar la función de compra. Llamar al método purchaseNFT del contrato para completar la transacción.

Web3 nuevo en la serie: implementar un DEX NFT desde cero

Una vez completados los pasos anteriores, se ha implementado una plataforma de intercambio NFT descentralizada básica. Se puede desplegar en plataformas como Vercel para su acceso y uso.

Serie para principiantes en Web3: implementar un DEX NFT desde cero

Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
  • Recompensa
  • 7
  • Republicar
  • Compartir
Comentar
0/400
DeadTrades_Walkingvip
· 07-07 14:50
Otra introducción sin conocimientos previos, agua
Ver originalesResponder0
Ser_Liquidatedvip
· 07-07 11:44
¿Qué hay para aprender? La integración de la Billetera está casi lista.
Ver originalesResponder0
NFTArchaeologisvip
· 07-05 06:00
Un intento de desarrollo simple por un aficionado a la arqueología experimentado.
Ver originalesResponder0
DefiEngineerJackvip
· 07-05 05:57
*sigh* otro tutorial que omite la verificación formal...
Ver originalesResponder0
CommunityWorkervip
· 07-05 05:57
Aprender es una tontería, la práctica es la única verdad.
Ver originalesResponder0
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)