subgraphs > Démarrage Rapide

Démarrage Rapide

Reading time: 5 min

Learn how to easily build, publish and query a subgraph on The Graph.

Conditions préalables

Lien vers cette section
  • Un portefeuille crypto
  • A smart contract address on a supported network
  • Node.js installed
  • A package manager of your choice (npm, yarn or pnpm)

How to Build a Subgraph

Lien vers cette section

1. Create a subgraph in Subgraph Studio

Lien vers cette section

Go to Subgraph Studio and connect your wallet.

Subgraph Studio lets you create, manage, deploy, and publish subgraphs, as well as create and manage API keys.

Click "Create a Subgraph". It is recommended to name the subgraph in Title Case: "Subgraph Name Chain Name".

2. Installez la CLI Graph

Lien vers cette section

Sur votre machine locale, exécutez l'une des commandes suivantes :

Using npm:

npm install -g @graphprotocol/graph-cli@latest

Using yarn:

npm install -g @graphprotocol/graph-cli

3. Initialize your subgraph

Lien vers cette section

You can find commands for your specific subgraph on the subgraph page in Subgraph Studio.

The graph init command will automatically create a scaffold of a subgraph based on your contract's events.

The following command initializes your subgraph from an existing contract:

graph init

If your contract was verified on Etherscan, then the ABI will automatically be created in the CLI.

When you initialize your subgraph, the CLI will ask you for the following information:

  • Protocol: Choose the protocol your subgraph will be indexing data from.
  • Subgraph slug: Create a name for your subgraph. Your subgraph slug is an identifier for your subgraph.
  • Directory: Choose a directory to create your subgraph in.
  • Ethereum network (optional): You may need to specify which EVM-compatible network your subgraph will be indexing data from.
  • Contract address: Locate the smart contract address you’d like to query data from.
  • ABI: If the ABI is not auto-populated, you will need to input it manually as a JSON file.
  • Start Block: You should input the start block to optimize subgraph indexing of blockchain data. Locate the start block by finding the block where your contract was deployed.
  • Contract Name: Input the name of your contract.
  • Index contract events as entities: It is suggested that you set this to true, as it will automatically add mappings to your subgraph for every emitted event.
  • Add another contract (optional): You can add another contract.

La capture d'écran suivante donne un exemple de ce qui vous attend lors de l'initialisation de votre subgraph :

Subgraph command

4. Edit your subgraph

Lien vers cette section

The init command in the previous step creates a scaffold subgraph that you can use as a starting point to build your subgraph.

When making changes to the subgraph, you will mainly work with three files:

  • Manifest (subgraph.yaml) - defines what data sources your subgraph will index.
  • Schema (schema.graphql) - defines what data you wish to retrieve from the subgraph.
  • AssemblyScript Mappings (mapping.ts) - translates data from your data sources to the entities defined in the schema.

For a detailed breakdown on how to write your subgraph, check out Creating a Subgraph.

5. Déployer votre subgraph

Lien vers cette section

N'oubliez pas que déployer n'est pas la même chose que publier.

Lorsque vous déployez un subgraph, vous le poussez vers Subgraph Studio, où vous pouvez le tester, le mettre en scène/préproduction et l'examiner.

Lorsque vous publiez un subgraph, vous le publiez sur la blockchain vers le réseau décentralisé.

Une fois votre subgraph écrit, exécutez les commandes suivantes :

```sh
graph codegen && graph build
```

Authentifiez-vous et déployez votre subgraph. La clé de déploiement se trouve sur la page du subgraph dans Subgraph Studio.

Clé de déploiement

```sh
graph auth <DEPLOY_KEY>
graph deploy <SUBGRAPH_SLUG>
```

The CLI will ask for a version label. It's strongly recommended to use semantic versioning, e.g. 0.0.1.

6. Examiner votre subgraph

Lien vers cette section

If you’d like to test your subgraph before publishing it, you can use Subgraph Studio to do the following:

  • Exécuter un exemple de requête.

  • Analyser votre subgraph dans le tableau de bord pour vérifier les informations.

  • Vérifier les logs sur le tableau de bord pour voir si des erreurs surviennent avec votre subgraph. Les logs d'un subgraph opérationnel ressembleront à ceci :

    Logs du subgraph

7. Publier votre subgraph sur The Graph Network⁠

Lien vers cette section

Publishing a subgraph to the decentralized network is an onchain action that makes your subgraph available for Curators to curate it and Indexers to index it.

Publier avec Subgraph Studio⁠

Lien vers cette section

Pour publier votre subgraph, cliquez sur le bouton "Publish" dans le tableau de bord.

Publish a subgraph on Subgraph Studio

Sélectionnez le réseau sur lequel vous souhaitez publier votre subgraph.

Publication avec l'Interface en Ligne de Commande (CLI)

Lien vers cette section

À partir de la version 0.73.0, vous pouvez également publier votre subgraph avec Graph CLI.

Ouvrez le graph-cli.

Utilisez les commandes suivantes :

```sh
graph codegen && graph build
```
Then,
```sh
graph publish
```
  1. Une fenêtre s'ouvrira, vous permettant de connecter votre portefeuille, d'ajouter des métadonnées et de déployer votre subgraph final sur un réseau de votre choix.

cli-ui

Pour personnaliser votre déploiement, consultez Publication d'un Subgraph.

Ajouter un signal à votre subgraph⁠

Lien vers cette section
  1. To attract Indexers to query your subgraph, you should add GRT curation signal to it.

    • Cette action améliore la qualité du service, réduit la latence et renforce la redondance et la disponibilité du réseau pour votre subgraph.
  2. Si éligibles aux récompenses d'indexation, les Indexeurs reçoivent des récompenses en GRT proportionnelles au montant signalé.

    • Il est recommandé de curer au moins 3 000 GRT pour attirer 3 Indexeurs. Vérifiez l'éligibilité aux récompenses en fonction de l'utilisation des fonctionnalités du subgraph et des réseaux supportés.

Pour en savoir plus sur la curation, lisez Curation.

Pour économiser sur les frais de gas, vous pouvez curer votre subgraph dans la même transaction que celle où vous le publiez en sélectionnant cette option :

Subgraph publish

8. Interroger votre subgraph

Lien vers cette section

You now have access to 100,000 free queries per month with your subgraph on The Graph Network!

You can query your subgraph by sending GraphQL queries to its Query URL, which you can find by clicking the Query button.

Pour plus d'informations sur l'interrogation des données de votre subgraph, lisez Interroger The Graph.

Modifier une page

Précédente
Contrats du Protocole
Suivante
Graph Explorer
Modifier une page