Inicio rápido de Avalanche

SubQuery TeamAlrededor de 6 min

Inicio rápido de Avalanche

En esta guía de inicio rápido, vamos a empezar con un simple proyecto inicial Avalanche y luego terminar indexando algunos datos reales reales. Esta es una base excelente para comenzar a desarrollar su propio Proyecto SubQuery.

Si está buscando guías para Substrate/Polkadot, puede leer la guía de inicio rápido específica de Substrate/Polkadot.

Al final de esta guía, tendrá un proyecto de SubQuery funcionando en un nodo de SubQuery con un endpoint GraphQL desde el que puede consultar datos.

Si aún no lo has hecho, te sugerimos familiarizarte con la terminología utilizada en SubQuery.

El objetivo de esta guía de inicio rápido es indexar todos los registros del token Pangolin Aprobar, sólo debería llevar 10-15 minutos

Preparación

Entorno de desarrollo local

Instalar SubQuery CLI

Instalar SubQuery CLI globalmente en tu terminal usando Yarn o NPM:

# NPM
npm install -g @subql/cli

Tenga en cuenta que NO animamos el uso de yarn global para instalar @subql/cli debido a su mala gestión de dependencias que puede llevar a errores en la línea.

A continuación, puede ejecutar ayuda para ver los comandos disponibles y el uso proporcionado por CLI

subql help

Inicializar el proyecto starter de SubQuery

Dentro del directorio en el que desea crear un proyecto SubQuery, simplemente ejecute el siguiente comando para empezar.

subql init

Se le harán ciertas preguntas ya que el proyecto de SubQuery está initalizado:

  • Nombre del proyecto: Un nombre para tu proyecto de Subconsulta
  • Familia de redes: La familia de redes de blockchain de capa 1 para la que se desarrollará este proyecto de SubQuery, utiliza las flechas de tu teclado para seleccionar entre las opciones, para esta guía utilizaremos "Avalanche"
  • Red: La red específica para la que se desarrollará este proyecto de SubQuery, utilice las flechas de su teclado para seleccionar entre las opciones, para esta guía utilizaremos "Avalanche"
  • Plantilla: Seleccione una plantilla de proyecto SubQuery que le proporcione un punto de partida para comenzar el desarrollo, le sugerimos que seleccione el "Proyecto de inicio"
  • Repositorio Git (opcional): Proporcione una URL Git a un repositorio en el que este proyecto de SubQuery será alojado (cuando esté alojado en SubQuery Explorer)
  • endpoint RPC (requerido): Proporcione una URL HTTPS a un endpoint RPC en ejecución que se utilizará por defecto para este proyecto. Este nodo RPC debe ser un nodo de archivo (tienen el estado completo de cadena). Para esta guía utilizaremos el valor por defecto "avalanche.api.onfinality.io"
  • Autores (Requeridos): Introduzca el propietario de este proyecto de Subconsulta aquí (por ejemplo, su nombre)
  • Descripción (Opcional): Puede proporcionar un párrafo corto sobre su proyecto que describa qué datos contiene y qué pueden hacer los usuarios con él
  • Versión (Requerida): Introduzca un número de versión personalizado o utilice el predeterminado (1.0.0)
  • Licencia (Requerida): Proporcione la licencia de software para este proyecto o acepte el predeterminado (Apache-2.0)

Después de completar el proceso de inicialización, debería ver una carpeta con el nombre de su proyecto que se ha creado dentro del directorio. El contenido de este directorio debe ser idéntico a lo que se muestra en la estructura de directorio.

Por último, bajo el directorio del proyecto, ejecute el siguiente comando para instalar las dependencias del nuevo proyecto.

cd PROJECT_NAME npm install

Hacer cambios en su proyecto En el paquete de inicio que acaba de inicializar, proporcionamos una configuración estándar para su nuevo proyecto. Usted trabajará principalmente en los siguientes archivos:

  1. El esquema GraphQL en schema.graphql
  2. El manifiesto del proyecto en project.yaml
  3. Las funciones de mapeo en el directorio src/mappings/

El objetivo de esta guía de inicio rápido es adaptar el proyecto de inicio estándar para indexar todos los registros de transacciones de Pangolin Aprobar.

Actualizando tu archivo de esquema GraphQL

El archivo schema.graphql define los diversos esquemas GraphQL. Debido a la forma en que funciona el lenguaje de consulta de GraphQL, el archivo de esquema esencialmente dicta la forma de sus datos de SubQuery. Es un buen lugar para comenzar porque te permite definir tu objetivo final por adelantado.

Vamos a actualizar el archivo schema.graphql para eliminar todas las entidades existentes y leer como sigue

type PangolinApproval @entity {
  id: ID!
  transactionHash: Cadena!
  blockNumber: Cadena!
  blockHash: Cadena!
  addressFrom: String
  addressTo: String
  amount: String
}

Importante: Cuando realice cambios en el archivo de esquema, asegúrese de que regenera el directorio de sus tipos. Hágalo ahora.

::: code-tabs @tab:active yarn shell yarn codegen