# Crear una dApp

Puedes crear tus propias aplicaciones descentralizadas (dApps) para interactuar con los smart contracts de Decentraland y exponer su funcionalidad de formas más elaboradas y amigables.

## Qué es una dApp

Una aplicación descentralizada, o dApp, es aquella que se ejecuta en una red distribuida peer to peer en lugar de hacerlo desde un servidor central.

En el contexto de blockchain, una dApp usa smart contracts y posiblemente una red P2P, en lugar de un servicio Web API. Una dApp también puede exponer un front end y almacenar en caché información de la blockchain temporalmente, pero su resultado se refleja finalmente on-chain.

Consulta [este sitio](https://blockchainhub.net/decentralized-applications-dapps/) para obtener una visión más completa sobre las dApps.

## Smart contracts de Decentraland

Decentraland ha escrito y mantiene una serie de smart contracts que interactúan con los tokens LAND y MANA.

Los propios tokens LAND y MANA están definidos por los *LANDregistry* y *MANAtoken* contracts, respectivamente. La lista también incluye contratos más específicos como crear un estate a partir de varios parcels o hipotecar parcels.

* [Smart contracts de Decentraland](https://contracts.decentraland.org/addresses.json): Puedes encontrar una lista completa de cada uno de nuestros contracts y sus direcciones.

Ten en cuenta que cada contract tiene una versión de producción en *mainnet* y una versión de prueba en *sepolia* y que cada uno tiene una dirección diferente.

Puedes leer el código completo de cada contract, ya que es información pública en la blockchain. Por ejemplo, puedes encontrar el contract por nombre en [Etherscan](https://etherscan.io/contractsVerified) para leer su contenido.

## código base de dApp

* [Código base](https://github.com/decentraland/dapp-boilerplate): Este código base puede ser un gran punto de partida para construir tu propia dApp.

## Bibliotecas de ayuda

Mientras construíamos nuestras propias dApps internamente, reunimos algunas bibliotecas de ayuda que también podrían resultarte útiles.

* [Decentraland-eth](https://github.com/decentraland/decentraland-eth): Esta es una biblioteca de bajo nivel con funciones de utilidad para trabajar con la blockchain de Ethereum.
* [Decentraland-dapps](https://github.com/decentraland/decentraland-dapps): Esta es una biblioteca de mayor nivel con módulos comunes para dApps. Los módulos de esta biblioteca están construidos usando `Decentraland-eth`.
* [Decentraland UI](https://ui.decentraland.org/): Esta biblioteca contiene una selección de elementos de UI reutilizables que se incluyen en los proyectos de Decentraland.

## dApps de ejemplo

A continuación hay enlaces al código completo de varias dApps que construimos en torno a Decentraland; estos pueden ayudarte a construir la tuya propia:

* [Gate](https://github.com/decentraland/gate): Esta dApp básica crea un NFT de invitación que se usaba cuando Decentraland estaba en una etapa de beta cerrada. En los primeros días, los jugadores de la whitelist que tenían este NFT eran los únicos que podían entrar al metaverse.
* [Marketplace](https://github.com/decentraland/marketplace): Esta es la aplicación completa que ejecuta el Decentraland [Marketplace](https://market.decentraland.org/). Para que funcione rápido, requiere una base de datos y un backend server conectado a la red Ethereum para crear índices con información sobre LAND.

## framework de pruebas para dApps

Antes de lanzar tu dApp a producción, recomendamos probarla primero.

* [dAppeteer](https://github.com/decentraland/dappeteer): Pusimos junto este framework para ayudarte a ejecutar pruebas en tu dApp.

## Smart contracts de Decentraland

En el siguiente enlace puedes encontrar una lista de smart contracts de Etherum relevantes para el ecosistema de Decentraland. La lista incluye los contratos en mainnet así como en otras redes de prueba de Ethereum.

[contracts.decentraland.org](https://contracts.decentraland.org/links)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.decentraland.org/creator/content-creator-es/scenes-sdk7/blockchain/create-a-dapp.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
