Construindo Subgraphs na Base
Reading time: 3 min
Este guia dará-lhe uma explicação rápida sobre a inicialização, criação e o lançamento do seu subgraph na testnet Base.
Serão necessários:
- Um endereço de contrato na testnet Base Sepolia
- Uma carteira de criptomoedas (por ex. MetaMask ou Coinbase Wallet)
A CLI (interface de linha de comando) do Graph — acima da versão 0.41.0 — é escrita em JavaScript, e é necessário ter instalado o 'npm' ou o 'yarn' para usá-la.
# NPMnpm install -g @graphprotocol/graph-cli# Yarnyarn global add @graphprotocol/graph-cli
Entre no e conecte a sua carteira de criptomoedas.
Após conectado, clique em "Criar um Subgraph", insira um nome para o seu Subgraph e clique em "Criar um Subgraph" novamente.
Podes encontrar comandos específicos para o seu subgraph no Subgraph Studio.
Certifique-se que o graph-cli está atualizado para a sua versão mais recente (acima de 0.41.0)
graph --version
Inicialize o seu subgraph de um contrato existente.
graph init --studio <SUBGRAPH_SLUG>
O seu subgraph slug é uma identidade para o seu subgraph. A ferramenta de CLI guiará-lhe pelos passos para a criação de um subgraph, incluindo:
- Protocolo: ethereum
- Subgraph slug:
<SUBGRAPH_SLUG>
- Diretório para a criação do subgraph:
<SUBGRAPH_SLUG>
- Rede Ethereum: base-sepolia
- Endereço de contrato:
<CONTRACT_ADDRESS>
- Bloco inicial (opcional)
- Nome do contrato:
<CONTRACT_NAME>
- Sim/não para a indexação de eventos ("sim" significa que o seu subgraph será equipado com entidades no schema e mapeamentos simples para os eventos emitidos)
Caso queira indexar apenas eventos emitidos, então não há mais nada a fazer, e é só pular para o próximo passo.
O comando anterior cria um subgraph de apoio que pode ser usado como ponto inicial para a construção do seu subgraph. Ao fazer mudanças ao subgraph, o trabalho principal será com três arquivos:
- Manifest (subgraph.yaml) — O manifest define quais fontes de dados seus subgraphs indexarão. Certifique-se de adicionar
base-sepolia
como o nome da rede no arquivo manifest, para lançar o seu subgraph na testnet Base Sepolia. - Schema (schema.graphql) — O schema GraphQL define quais dados desejas retirar do subgraph.
- Mapeamentos em AssemblyScript (mapping.ts) — Este é o código que traduz dados das suas fontes de dados às entidades definidas no schema.
Se quiser indexar dados adicionais, precisa estender o manifest, o schema e os mapeamentos.
Para mais informações sobre como escrever o seu subgraph, veja .
Antes de poder lançar o seu subgraph, deves autenticá-lo com o Subgraph Studio. Isto é possível ao executar o seguinte comando:
Autentique o subgraph no Studio
graph auth --studio <DEPLOY_KEY>
Em seguida, digite o diretório do seu subgraph.
cd <SUBGRAPH_DIRECTORY>
Construa o seu subgraph com o seguinte comando:
```graph codegen && graph build```
Finalmente, lance o seu subgraph com este comando:
```graph deploy --studio <SUBGRAPH_SLUG>```
Depois que o seu subgraph for lançado, você pode consultá-lo do seu dapp utilizando o 'Development Query URL' (URL de consulta de desenvolvimento) no Subgraph Studio.
Nota — A API do Studio tem um 'rate limit' (limite de ritmo). Vendo isto, recomendamos usá-la para desenvolvimento e testes.
Para aprender mais sobre queries de dados do seu subgraph, veja a página .