Crear una plataforma de intercambio NFT desde cero
En artículos anteriores, exploramos cómo lograr el comercio descentralizado de tokens ERC-20 a través de DEX. Entonces, ¿cómo se puede lograr el comercio descentralizado para NFT que siguen el protocolo ERC-721?
Actualmente, las principales plataformas de intercambio de NFT utilizan un modelo de órdenes, similar a los productos exhibidos en las estanterías de un supermercado; los compradores pueden comprarlos y llevárselos si consideran que el precio es adecuado. Este artículo implementará el intercambio descentralizado de NFT a través de la redacción de contratos inteligentes y una simple página de frontend. Es importante tener en cuenta que el contenido de este artículo es solo para referencia de aprendizaje y no es adecuado para un entorno de producción.
Introducción a NFT
NFT es un token no fungible que sigue el protocolo ERC-721. Cada NFT es único y generalmente se muestra en la cartera en diferentes formas de imagen, y tiene un ID único para su identificación.
Debido a las características de NFT, no se puede establecer un precio a través de una curva de precios como los tokens ERC-20. Por lo tanto, la forma de negociación más común en la actualidad es utilizar un formato de libro de órdenes.
Modo de negociación de libro de órdenes
En el modo de libro de órdenes, el precio del producto es establecido por humanos, a diferencia del método de cálculo de precios mediante algoritmos. El libro de órdenes generalmente tiene dos modos de negociación:
Orden de precios: el vendedor establece el precio de venta, y el comprador puede comprar si lo considera adecuado.
Orden de compra: el comprador emite una orden de compra, el vendedor puede vender si considera que el precio es adecuado.
En general, el precio de la orden de compra será inferior al precio de la orden de precio. Este artículo se centrará en el modo de transacción de precios.
Funciones básicas de NFT DEX
Un DEX NFT básico debe incluir las siguientes funciones:
Listar productos: poner el NFT a la venta a un precio establecido
Comprar productos: comprar a precio de NFT
Cobro de comisiones: se cobra un porcentaje según el precio de transacción
proceso de listado de productos
Frontend: el usuario selecciona el NFT y establece el precio, hace clic en listar
Contrato: el usuario autoriza al contrato a operar su NFT
Es necesario mantener un mapa de precios de los productos listados por los usuarios en el contrato. Para reducir la carga del contrato, estos datos también se pueden almacenar en un servicio centralizado.
Proceso de compra de productos
Frontend: el usuario selecciona el NFT que desea comprar y hace clic en comprar
Contrato: transferir los fondos del comprador al vendedor, NFT al comprador
Implementación de NFT DEX
A continuación, vamos a implementar un DEX de NFT desde cero.
1. Crear NFT
Para las pruebas, podemos crear rápidamente un NFT del protocolo ERC-721 a través de Remix. También podemos utilizar un NFT ya preparado.
2. Redacción de contratos
El contrato debe incluir los siguientes métodos principales:
2.1 Vendedor lista NFT
Proceso:
El usuario elige NFT
Establecer el precio ( en monedas estables o ETH )
Autorizar NFT al contrato
Llamar al método de listado
Método de listado que debe ejecutarse:
Verificar la propiedad del NFT
Añadir registro de listado
Disparar evento de listado
2.2 El comprador compra NFT
El comprador selecciona el NFT y, después de realizar el pago, se ejecuta el contrato:
Leer datos de NFT
Calcular y deducir la tarifa de transacción
Transferir NFT al comprador
Disparar evento de compra
2.3 Cancelar la lista
Solo establece el campo isActive del producto en false.
2.4 Retiro de tarifas
Se puede depositar la tarifa en el contrato o transferirla a la dirección designada.
3. Desarrollo del frontend de DEX
Herramientas principales utilizadas:
Ant Design Web3: conectar billetera, mostrar tarjetas NFT
Wagmi: Interactuar con la cartera
Nextjs + Vercel: despliegue del proyecto
La interfaz 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 conexión de billetera.
3.2 página de acuñación
Usar el método useWriteContract de wagmi para implementar la acuñación de NFT.
3.3 Página de Portafolio
Mostrar NFT del usuario, soporta operaciones de listado y deslistado.
3.4 Página de Compra
Muestra los NFT que ya están en la plataforma y soporta la operación de compra.
Hasta aquí, se ha completado el frontend de un DEX básico de NFT. Se puede desplegar en Vercel para su acceso.
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.
12 me gusta
Recompensa
12
4
Republicar
Compartir
Comentar
0/400
PoolJumper
· 07-21 17:01
会整是experto
Ver originalesResponder0
DogeBachelor
· 07-19 17:08
Por favor amigo, dígame un poco más específico cómo operar.
Ver originalesResponder0
BlockTalk
· 07-18 22:22
No es mejor abrir una caja y hacer dumping que hacer un contrato uno mismo.
Ver originalesResponder0
ApeDegen
· 07-18 22:22
¡Finalmente hay un tutorial que me llevará a hacer dinero!
Desde cero, construir una plataforma de intercambio NFT: guía de implementación de contratos inteligentes y front-end
Crear una plataforma de intercambio NFT desde cero
En artículos anteriores, exploramos cómo lograr el comercio descentralizado de tokens ERC-20 a través de DEX. Entonces, ¿cómo se puede lograr el comercio descentralizado para NFT que siguen el protocolo ERC-721?
Actualmente, las principales plataformas de intercambio de NFT utilizan un modelo de órdenes, similar a los productos exhibidos en las estanterías de un supermercado; los compradores pueden comprarlos y llevárselos si consideran que el precio es adecuado. Este artículo implementará el intercambio descentralizado de NFT a través de la redacción de contratos inteligentes y una simple página de frontend. Es importante tener en cuenta que el contenido de este artículo es solo para referencia de aprendizaje y no es adecuado para un entorno de producción.
Introducción a NFT
NFT es un token no fungible que sigue el protocolo ERC-721. Cada NFT es único y generalmente se muestra en la cartera en diferentes formas de imagen, y tiene un ID único para su identificación.
Debido a las características de NFT, no se puede establecer un precio a través de una curva de precios como los tokens ERC-20. Por lo tanto, la forma de negociación más común en la actualidad es utilizar un formato de libro de órdenes.
Modo de negociación de libro de órdenes
En el modo de libro de órdenes, el precio del producto es establecido por humanos, a diferencia del método de cálculo de precios mediante algoritmos. El libro de órdenes generalmente tiene dos modos de negociación:
Orden de precios: el vendedor establece el precio de venta, y el comprador puede comprar si lo considera adecuado.
Orden de compra: el comprador emite una orden de compra, el vendedor puede vender si considera que el precio es adecuado.
En general, el precio de la orden de compra será inferior al precio de la orden de precio. Este artículo se centrará en el modo de transacción de precios.
Funciones básicas de NFT DEX
Un DEX NFT básico debe incluir las siguientes funciones:
proceso de listado de productos
Es necesario mantener un mapa de precios de los productos listados por los usuarios en el contrato. Para reducir la carga del contrato, estos datos también se pueden almacenar en un servicio centralizado.
Proceso de compra de productos
Implementación de NFT DEX
A continuación, vamos a implementar un DEX de NFT desde cero.
1. Crear NFT
Para las pruebas, podemos crear rápidamente un NFT del protocolo ERC-721 a través de Remix. También podemos utilizar un NFT ya preparado.
2. Redacción de contratos
El contrato debe incluir los siguientes métodos principales:
2.1 Vendedor lista NFT
Proceso:
Método de listado que debe ejecutarse:
2.2 El comprador compra NFT
El comprador selecciona el NFT y, después de realizar el pago, se ejecuta el contrato:
2.3 Cancelar la lista
Solo establece el campo isActive del producto en false.
2.4 Retiro de tarifas
Se puede depositar la tarifa en el contrato o transferirla a la dirección designada.
3. Desarrollo del frontend de DEX
Herramientas principales utilizadas:
La interfaz 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 conexión de billetera.
3.2 página de acuñación
Usar el método useWriteContract de wagmi para implementar la acuñación de NFT.
3.3 Página de Portafolio
Mostrar NFT del usuario, soporta operaciones de listado y deslistado.
3.4 Página de Compra
Muestra los NFT que ya están en la plataforma y soporta la operación de compra.
Hasta aquí, se ha completado el frontend de un DEX básico de NFT. Se puede desplegar en Vercel para su acceso.