# Lanzamiento NFT

El [Lanzamiento NFT](https://dexappbuilder.dexkit.com/forms/deploy/thirdweb/DropERC721) el contrato NFT Drop surge como la solución óptima cuando tu objetivo implica introducir una serie de NFTs distintivos utilizando el Estándar ERC721A.

Este innovador marco te permite establecer una colección de estipulaciones, denominadas fases de reclamación, dispuestas secuencialmente para regular los detalles de cómo y cuándo tu base de usuarios puede adquirir un NFT de tu lanzamiento. Estos parámetros abarcan una variedad de factores, incluyendo listas permitidas, fechas de lanzamiento, límites de reclamación y revelaciones escalonadas.

Tras la incorporación de NFTs en tu contrato de lanzamiento, estos permanecen sin acuñar en este punto. En su lugar, organizas preparativos completos para tus usuarios mediante el proceso de acuñación perezosa (lazy minting), asegurando que los NFTs puedan ser acuñados por carteras externas.

## Facilitando los ingresos para creadores en OpenSea

Las particularidades operativas de los ingresos para creadores en OpenSea se acomodan sin problemas dentro del marco de este contrato. Nativo en su diseño, este contrato soporta los ingresos para creadores de OpenSea, ofreciendo la flexibilidad de habilitar o deshabilitar esta función. El administrador del contrato conserva la prerrogativa de ajustar esta configuración después del despliegue, ejecutado mediante la `setOperatorRestriction` función accesible a través del explorador del contrato.

## Casos de uso diversos e instancias ilustrativas&#x20;

El contrato NFT Drop despliega una variedad de aplicaciones prácticas:

* **Estreno de colección PFP**: Aprovecha el contrato NFT Drop para el gran debut de una colección de Imagen de Perfil (PFP), donde cada NFT presenta una combinación distintiva de rasgos, facilitando una individualidad sin igual.
* **Presentación de NFT artísticos**: Distribuye tus NFTs artísticos y permite que los miembros de tu comunidad los acuñen a un precio predeterminado, fomentando un ecosistema colaborativo y orientado al valor.
* **Asignación exclusiva de NFT**: Diseña un lanzamiento exclusivo de NFTs, accesible únicamente a una lista predeterminada de carteras, fomentando así un sentido de exclusividad y lealtad.
* **Revelación de NFT con límite temporal**: Configura un lanzamiento de NFTs con fases de reclamación sensibles al tiempo, orquestando una mayor anticipación y dinámica de compromiso.
* **NFTs ricos en atributos**: Lanza una colección de NFTs caracterizada por una intrincada mezcla de atributos, alentando a los coleccionistas a reunir una selección diversa y cautivadora.
* **Conmemoración NFT celebratoria**: Marca ocasiones especiales o hitos organizando un lanzamiento de NFTs, capturando la esencia del momento dentro de una obra digital.

## Desplegando este contrato

{% embed url="<https://dexappbuilder.dexkit.com/forms/deploy/thirdweb/DropERC721>" %}
Enlace directo
{% endembed %}

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2Fk9sNuvyydAqlQzagHUsi%2Fbrave_screenshot_dexappbuilder.dexkit.com%20(4).png?alt=media&#x26;token=347328a2-aef8-4aeb-8a99-ffa141d2e9fc" alt=""><figcaption></figcaption></figure>

* **Nombre:** El nombre para este NFT Drop según tu idea.&#x20;
* **Símbolo:** Este será el ticker para este lanzamiento. Manténlo corto.&#x20;
* **Descripción:** Puedes ser creativo aquí porque esta es la descripción que este contrato tendrá para los fines que has dispuesto.&#x20;
* **Imagen:** Sube tu imagen para este contrato. Tu imagen será almacenada en [IPFS](https://ipfs.tech/) asegurando persistencia a lo largo del tiempo.&#x20;
* **Receptor de ventas:** Esta dirección recibirá todos los tokens por cada venta en el contrato que estamos a punto de desplegar. La predeterminada es la de la cartera conectada. Puede cambiarse por cualquier otra.&#x20;
* **Receptor de regalías:** establece la dirección predeterminada receptora de regalías para este lanzamiento.&#x20;
  * **Porcentaje de regalías:** Aquí se definirá el porcentaje de cada venta que será enviado a la dirección que recibe las regalías.&#x20;
* **Dirección del receptor:** Para contratos que involucren ventas primarias, adquiere tarifas suplementarias por todas las ventas primarias que ocurran en este contrato. (Esto es ventajoso si estás desplegando este contrato en nombre de un tercero y deseas imponer tarifas por tus servicios). Si este contrato sirve como un mercado, obtén un porcentaje de todas las ventas secundarias que ocurran dentro de tu contrato.&#x20;
* **Porcentaje de tarifa de la plataforma:** para las tarifas suplementarias mencionadas arriba.

## Implementando la interfaz de usuario

Una vez hayamos desplegado el contrato, procederemos a la [sección de gestión del contrato](https://dexappbuilder.dexkit.com/forms/contracts/list), localizaremos el contrato que acabamos de desplegar y haremos clic en el botón "Manage" que nos llevará al panel de configuración.

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FemLlXsqzKp2s7hdMvBvO%2Fimage.png?alt=media&#x26;token=49332a05-6cf8-4011-a3a0-c3a3c2718063" alt=""><figcaption></figcaption></figure>

Dentro del panel del contrato podemos ver el botón «Mint», acompañado de varias pestañas. Vamos a explicar las funciones de cada una.

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FGw5Rhm3Hl1vBVuJkCIb4%2Fimage.png?alt=media&#x26;token=f57c9b9f-5320-43d9-8740-933c4cfbfc09" alt=""><figcaption></figcaption></figure>

## Acuñar un NFT

Al presionar el botón «Mint», se abrirá un nuevo modal en el que podemos colocar los detalles de este nuevo NFT, como describimos a continuación

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FrxnxxdFWGHVTzS7pNYdN%2Fimage.png?alt=media&#x26;token=3a116d43-ed4c-46e5-8e43-72fc3ca58328" alt=""><figcaption></figcaption></figure>

* El nombre del NFT.&#x20;
* La descripción de este NFT.
* Botón agregar atributo: Permitirá a los usuarios añadir rareza a este NFT específico.

  * Tipos de atributos: Genérico, número, número de impulso y porcentaje de impulso.

  Subir la imagen. El usuario podrá subir una imagen (máx. 1 MB) o generar una usando lenguaje natural.

{% hint style="info" %}
Para disfrutar de las funciones de inteligencia artificial, el usuario debe recargar créditos en la plataforma.
{% endhint %}

Después de completar todos los datos para el primer NFT, el usuario puede hacer clic en el botón «Add NFT» (para agregar más y acuñarlos todos juntos) o presionar el botón «Create NFTs» y comenzar con los que tenga (más tarde puede acuñar otros dentro de la misma colección).

## Configurando las condiciones de reclamación

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FpKkcJeY4hRUvh0iSIvx4%2Fimage.png?alt=media&#x26;token=693ff47e-caa9-45d0-9b25-ed86d373cb34" alt=""><figcaption></figcaption></figure>

Es hora de definir la forma en que planeamos entregar nuestros NFTs a nuestra comunidad o clientes potenciales. Para ello debemos acceder a la pestaña "Claim conditions" y una vez allí debemos presionar el botón «Add claim condition» que mostrará el siguiente formulario:

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FDkhKskDEbH2GCSL6XYT8%2Fimage.png?alt=media&#x26;token=5d0932c7-7951-4f4e-8395-a3aa3d52793f" alt=""><figcaption></figcaption></figure>

* **Nombre:** El nombre de esta nueva fase. Por ejemplo, nombra esta fase como un lanzamiento estacional especial con circulación limitada.
* **Hora de inicio:** Define la fecha exacta en la que deseas que esta fase se active y las personas puedan reclamar los NFTs.
* **Esperar en segundos:** ¿Deseas un tiempo de espera justo antes del inicio de esta fase? Puede ser una breve pausa o tan larga como quieras.
* **Total de ítems para reclamar:** Establece la cantidad o presiona ilimitado.
* **Total de ítems para reclamar por cartera:** ¿Cuántos ítems de esta fase quieres que una sola cartera pueda acuñar?
* **Precio:** Establece el precio para cada NFT en este lanzamiento (no incluye las tarifas de red o comisiones que debes configurar previamente en las secciones de comisiones del marketplace). Puedes establecer precio cero (0) pero necesitas elegir cualquier token en la lista. Tus minters no cobrarán por nada más que las tarifas de red.
* **Buscar token:** Elige de esta lista el token que deseas recibir por tus NFTs. Puedes [configurar los tokens](https://docs.dexkit.com/productos-defi-y-soluciones-es/dexappbuilder/gestionando-esta-herramienta/importando-tokens) que quieras previamente desde la configuración de tokens de tu producto.

Una vez que hayas terminado de completar los datos para la primera condición puedes guardarla o agregar otra condición directamente presionando el botón “Add claim condition”. En este caso la guardamos y procedemos a la siguiente pestaña.

## Editando metadatos

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FzVMT17rdD91WTzDqauO7%2Fimage.png?alt=media&#x26;token=19f31ad3-6d75-4342-b9ea-bee5a02ce559" alt=""><figcaption></figcaption></figure>

En esta sección puedes editar el nombre y la descripción de la colección para hacerla más atractiva para tu comunidad. Markdown está habilitado para que puedas hacer descripciones con el formato adecuado.

{% hint style="info" %}
Ten en cuenta que cada cambio que realices en el contrato invocará una llamada al contrato que incurrirá en tarifas de red.
{% endhint %}

## Configurando ajustes administrativos

Todas las opciones configurables aquí representan aspectos críticos del contrato inteligente. Aunque ya hayan sido pre-pobladas en el momento del despliegue del contrato, estas opciones pueden modificarse más tarde y cambiar el propósito del contrato.

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FnVryuB3QVnrKaDc2yUBn%2Fimage.png?alt=media&#x26;token=7d87ae1e-4189-41fd-bf35-cf3d62f4eb6b" alt="" width="375"><figcaption></figcaption></figure>

* **Admin:** Esta dirección de cartera será el superusuario que tendrá poder total dentro de este contrato, pudiendo modificar cualquier aspecto crítico.
* **Minter / Creador:** Esta dirección de cartera tendrá poder de creación para este contrato.&#x20;
* **Transferir:** Esta dirección podrá transferir cualquier activo desde el contrato. Esto no tiene nada que ver con las transferencias de usuarios.
* **Metadatos:** Agrega más direcciones de cartera solo para la identificación de metadatos on-chai&#x6E;**.**

{% hint style="info" %}
Todas las interacciones en esta sección también incurren en tarifas de red. Recuerda tener suficiente moneda para gas en la red en la que desplegaste el contrato para cambios posteriores.
{% endhint %}

## Previsualizando nuestro lanzamiento

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FLtrS1pH10Cjajwdrmyug%2Fimage.png?alt=media&#x26;token=cbfe18e4-e664-4268-b399-3cfcd22b6162" alt=""><figcaption></figcaption></figure>

Una vez que terminemos de acuñar los NFTs que ofreceremos gratuitamente a nuestros clientes y visitantes, podemos hacer clic en el enlace "View public page". Una vez dentro podemos ver nuestro lanzamiento desde la plataforma DexAppBuilder 👇

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FZH4pgq84wU4g4jTces9o%2Fimage.png?alt=media&#x26;token=da753c35-5d36-49ed-b12c-8168fa195d2b" alt=""><figcaption></figcaption></figure>

¡Nuestro lanzamiento funciona correctamente! Pero... **¿Y si queremos tener nuestro lanzamiento DENTRO de nuestra aplicación descentralizada creada con DexAppBuilder?** 🤔 Sigue los pasos a continuación para incrustar la interfaz de este contrato dentro de tu app y atraer a tus clientes hacia ella

## Configurando el sitio de acuñación

Para este propósito asumiremos que ya has creado una aplicación descentralizada con DexAppBuilder (si no lo has hecho, visita [esta sección de la documentación](https://docs.dexkit.com/productos-defi-y-soluciones-es/dexappbuilder/creando-mi-primer-dapp)). Es necesario para poder disfrutar de esta funcionalidad.

1. Debemos navegar a la configuración general de nuestra aplicación. Hacemos esto [a través de este enlace](https://dexappbuilder.dexkit.com/admin).
2. Una vez allí buscamos nuestra aplicación descentralizada en la lista y presionamos el botón "hamburguer", y hacemos clic en «Edit», como mostramos en la imagen a continuación&#x20;

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FEJolwGdXBDWypzgz3PR1%2Fimage.png?alt=media&#x26;token=382b76eb-556e-4126-804f-e83a712e2f7e" alt=""><figcaption></figcaption></figure>

3. Una vez que estemos en la configuración de nuestra aplicación, vamos a la sección "Layout" y abrimos "Pages". Una vez dentro, haz clic en el botón «+ Add section»

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2Ft9wI42ErJ67csTqmOpEa%2Fimage.png?alt=media&#x26;token=517c605b-3235-4c06-9423-372e30dfd5ab" alt=""><figcaption></figcaption></figure>

4. Una vez que presionamos el botón «+ Add section» se abrirá un modal con varios componentes para elegir. Busca el componente «DexGenerator Contract» 👇

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FtOcBxZGyuiIUMNGTpaKb%2Fimage.png?alt=media&#x26;token=398f6f37-f9a7-4974-a6fc-92501cdef024" alt="" width="316"><figcaption><p>Puedes usar la barra de búsqueda para encontrar rápidamente el componente.</p></figcaption></figure>

5. Ahora se abrirá un modal con una lista de contratos que previamente has desplegado. Asegúrate de elegir el correcto haciendo clic en él.

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FX5PWWwpJyAQUURa29HXV%2Fimage.png?alt=media&#x26;token=15e21e29-3a29-4214-956a-d527f86037a4" alt="" width="316"><figcaption></figcaption></figure>

6. Una vez dentro de los parámetros de ese contrato podremos ver las siguientes opciones en la izquierda, junto con una vista previa del componente visual a la derecha

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FDTVNQndrJfmGMGUhIoHl%2Fimage.png?alt=media&#x26;token=b2ac97e4-9631-4006-bdb5-c7f336821b03" alt=""><figcaption></figcaption></figure>

7. **Elige una variante:** Elige entre dos estilos de componente, Simple (como el mostrado en la imagen ☝) o detallado (en la imagen de abajo 👇)

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FSQqtxVTU7KcMms7kPe5H%2Fimage.png?alt=media&#x26;token=4e059a5e-3a78-43af-9bca-fc937528b5db" alt=""><figcaption></figcaption></figure>

8. Ya decidimos cuál de las variantes usar, solo tenemos que presionar el botón «Save». Seremos redirigidos a nuestra sección de edición de «Page».

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FfCIKI6M569ZLtUjUllC6%2Fimage.png?alt=media&#x26;token=24a23fc8-6735-4034-93d5-acbb3e81e1a9" alt=""><figcaption></figcaption></figure>

9. En la imagen de arriba podemos ver que nuestro componente fue agregado correctamente al orden de esa página (que solo contiene un componente). Ahora presionemos el botón «Save» en la esquina inferior derecha para enviar todos los cambios al servidor.
10. Esperamos un par de minutos para que los cambios se reflejen en nuestra aplicación descentralizada y hacemos clic en el botón «Preview» para una vista previa o en el botón "Open URL" que nos llevará a nuestra DApp en producción.

<figure><img src="https://3072554521-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FPidyEfI5SOIUSTLBf5ia%2Fimage.png?alt=media&#x26;token=05cd5171-7042-43c3-9855-b2d3ce73db41" alt=""><figcaption></figcaption></figure>

¡Y voilà! Así es como creas rápidamente un lanzamiento de NFT para tus fans o clientes usando el contrato DropERC721 de Thirdweb y DexAppBuilder 🤝
