5 Pasos Simples para Construir un Subgrafo

Lorena Fabris
7 min readDec 19, 2024

Por Michael Macaulay, traducción del artículo: ¨5 Simple Steps to Build a Subgraph¨

En el mundo de Web3, los subgrafos son elementos revolucionarios. Permiten a los desarrolladores acceder a datos de la blockchain, potenciando sus dapps en The Graph Network. Ya sea que estés construyendo tu primer subgrafo o buscando optimizar tu proceso de indexación, esta guía te explicará todo lo que necesitas saber.

En solo 5 pasos simples, aprenderás cómo crear, hacer deploy y publicar un subgrafo para empezar a consultar datos de la blockchain como un profesional. Sin importar tu nivel de experiencia, este tutorial te ayudará a aprovechar el poder de The Graph para desbloquear nuevas posibilidades en el desarrollo descentralizado. ¡Comencemos!

Prerrequisitos

  • Una wallet o billetera cripto
  • Una dirección de smart contract en una red soportada
  • Node.js instalado
  • Un gestor de paquetes de tu elección (npm, yarn o pnpm)

Cómo Construir un Subgrafo

1. Crea un subgrafo en Subgraph Studio

Ve a Subgraph Studio y conecta tu wallet.

Subgraph Studio te permite crear, gestionar, hacer deploy y publicar subgrafos, así como crear y gestionar claves API.

Haz clic en “Create a Subgraph”. Se recomienda nombrar el subgrafo en Title Case: “Nombre del Subgrafo Nombre de la Cadena”.

2. Instala el Graph CLI

En tu máquina local, ejecuta uno de los siguientes comandos:

Usando npm:

Usando yarn:

3. Inicializa tu subgrafo

Puedes encontrar comandos para tu subgrafo específico en la página del subgrafo en Subgraph Studio.

El comando graph init creará automáticamente un scaffold de un subgrafo basado en los eventos de tu contrato.

El siguiente comando inicializa tu subgrafo desde un contrato existente:

Si tu contrato fue verificado en Etherscan, entonces el ABI se creará automáticamente en el CLI.

Cuando inicialices tu subgrafo, el CLI te pedirá la siguiente información:

  • Protocol: Elige el protocolo del que tu subgrafo indexará datos.
  • Subgraph Slug: Crea un nombre para tu subgrafo. El slug de tu subgrafo es un identificador para tu subgrafo.
  • Directory: Elige un directorio para crear tu subgrafo.
  • Ethereum Network (opcional): Puedes necesitar especificar de qué red compatible con EVM tu subgrafo indexará datos.
  • Contract Address: Localiza la dirección del smart contract del que deseas consultar datos.
  • ABI: Si el ABI no se auto-completa, necesitarás ingresarlo manualmente como un archivo JSON.
  • Start Block: Debes ingresar el bloque inicial para optimizar la indexación de datos de la blockchain del subgrafo. Localiza el bloque inicial encontrando el bloque donde se hizo el deploy de tu contrato.
  • Contract Name: Ingresa el nombre de tu contrato.
  • Index contract events as entities: Se sugiere establecer esto como verdadero, ya que agregará automáticamente mapeos a tu subgrafo para cada evento emitido.
  • Add another contract (opcional): Puedes agregar otro contrato.

Mira la siguiente captura de pantalla para ver un ejemplo de qué esperar al inicializar tu subgrafo:

4. Edita tu subgrafo

El comando init en el paso anterior crea un scaffold de subgrafo que puedes usar como punto de partida para construir tu subgrafo.

Cuando hagas cambios al subgrafo, trabajarás principalmente con tres archivos:

  • Manifest (subgraph.yaml) — define qué fuentes de datos indexará tu subgrafo.
  • Schema (schema.graphql) — define qué datos deseas recuperar del subgrafo.
  • AssemblyScript Mappings (mapping.ts) — traduce datos de tus fuentes de datos a las entidades definidas en el esquema.

Para una explicación detallada sobre cómo escribir tu subgrafo, consulta Creating a Subgraph.

5. Haz Deploy de tu subgrafo

Recuerda, hacer deploy no es lo mismo que publicar.

Cuando haces deploy de un subgrafo, lo envías a Subgraph Studio, donde puedes probarlo, prepararlo y revisarlo.

Cuando publicas un subgrafo, lo estás publicando en on-chain en la red descentralizada.

Una vez que tu subgrafo está escrito, ejecuta los siguientes comandos:

Autentica y haz deploy de tu subgrafo. La clave de deploy se puede encontrar en la página del subgrafo en Subgraph Studio.

El CLI te pedirá una etiqueta de versión. Se recomienda encarecidamente usar semantic versioning, por ejemplo, 0.0.1.

6. Revisa tu subgrafo

Si deseas probar tu subgrafo antes de publicarlo, puedes usar Subgraph Studio para hacer lo siguiente:

  • Ejecutar una consulta de ejemplo.
  • Analizar tu subgrafo en el dashboard/panel de control para verificar información.
  • Revisar los registros en el panel de control para ver si hay errores en tu subgrafo. Los registros de un subgrafo operativo se verán así:

7. Publica tu subgrafo en The Graph Network

Publicar un subgrafo en la red descentralizada es una acción onchain que hace que tu subgrafo esté disponible para que los Curadores lo curen y los Indexadores lo indexen.

Publica con Subgraph Studio

Para publicar tu subgrafo, haz clic en el botón Publish en el panel de control.

Selecciona la red en la que deseas publicar tu subgrafo.

Publica desde el CLI

A partir de la versión 0.73.0, también puedes publicar tu subgrafo con Graph CLI.

Abre el graph-cli.

Usa los siguientes comandos:

Se abrirá una ventana, permitiéndote conectar tu wallet, agregar metadatos y hacer deploy de tu subgrafo finalizado a una red de tu elección.

Para personalizar tu deploy, consulta Publishing a Subgraph.

Agrega señal a tu subgrafo

1.- Para atraer Indexadores para consultar tu subgrafo, deberías agregar señal de curación GRT.
* Esta acción mejora la calidad del servicio, reduce la latencia y mejora la redundancia de la red y la disponibilidad para tu subgrafo.

2.- Si son elegibles para recompensas de indexación, los Indexadores reciben recompensas GRT basadas en la cantidad señalada.
* Se recomienda curar al menos 3.000 GRT para atraer a 3 Indexadores. Verifica la elegibilidad de recompensas basada en el uso de características del subgrafo y redes soportadas.

Para aprender más sobre la curación, lee Curating.

Para ahorrar en costos de gas, puedes curar tu subgrafo en la misma transacción en que lo publicas seleccionando esta opción:

8. Consulta tu subgrafo

¡Ahora tienes acceso a 100.000 consultas gratuitas o query fees por mes con tu subgrafo en The Graph Network!

Puedes consultar tu subgrafo enviando consultas GraphQL a su Query URL, que puedes encontrar haciendo clic en el botón Query.

Para más información sobre cómo consultar datos de tu subgrafo, lee Querying The Graph.

Pensamientos Finales

¡Felicitaciones! Acabas de aprender cómo crear, hacer deploy y publicar un subgrafo en cinco pasos simples. Con The Graph, ahora puedes desbloquear datos de la blockchain para potenciar tu dapp y llevar tu desarrollo Web3 al siguiente nivel.

¡El futuro de Web3 comienza con lo que construyes hoy!

Acerca de The Graph

The Graph es la fuente de datos e información para la internet descentralizada. Como el marketplace de datos descentralizado original que introdujo y estandarizó los subgrafos, The Graph se ha convertido en el método de web3 para indexar y acceder a datos de la blockchain. Desde su lanzamiento en 2018, decenas de miles de desarrolladores han construido subgrafos para dapps a través de más de 80 blockchains — incluyendo Ethereum, Solana, Arbitrum, Optimism, Base, Polygon, Celo, Fantom, Gnosis y Avalanche.

A medida que la demanda de datos en web3 continúa creciendo, The Graph entra en una New Era con una visión más amplia que incluye nuevos servicios de datos y lenguajes de consulta, asegurando que el protocolo descentralizado pueda servir cualquier caso de uso — ahora y en el futuro.

Descubre más sobre cómo The Graph está dando forma al futuro de las redes de infraestructura física descentralizada (DePIN) y mantente conectado con la comunidad. Sigue a The Graph en X, LinkedIn, Instagram, Facebook, Reddit, Farcaster y Medium. Únete a la comunidad en el Telegram de The Graph, únete a discusiones técnicas en el Discord de The Graph.

The Graph Foundation supervisa The Graph Network. The Graph Foundation es supervisada por el Technical Council. Edge & Node, StreamingFast, Semiotic Labs, Messari, GraphOps, Pinax y Geo son siete de las muchas organizaciones dentro del ecosistema The Graph.

--

--

Lorena Fabris
Lorena Fabris

Written by Lorena Fabris

Lawyer, Political Scientist, Blockchain Enthusiast

No responses yet