Hızlı Başlangıç
Reading time: 4 min
Learn how to easily build, publish and query a on The Graph.
- Bir kripto cüzdanı
- A smart contract address on a
- installed
- A package manager of your choice (
npm
,yarn
orpnpm
)
'ya gidin ve cüzdanınızı bağlayın.
Subgraph Studio, subgraph oluşturmanıza, yönetmenize, yayına almanıza ve yayımlamanıza, ayrıca API anahtarlarını oluşturmanıza ve yönetmenize olanak tanır.
"Subgraph Oluştur" düğmesine tıklayın. Subgraph'in adını başlık formunda vermeniz önerilir: "Subgraph Adı Ağ Adı".
Yerel makinenizde aşağıdaki komutlardan birini çalıştırın:
npm install -g @graphprotocol/graph-cli@latest
yarn global add @graphprotocol/graph-cli
The graph init
command will automatically create a scaffold of a subgraph based on your contract's events.
Aşağıdaki komut, subgraph'inizi mevcut bir akıllı sözleşmeden başlatır:
graph init
If your contract was verified on Etherscan, then the ABI will automatically be created in the CLI.
Subgraph'inizi başlattığınızda, CLI sizden aşağıdaki bilgileri isteyecektir:
- 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.
Subgraph'ınızı başlatırken neyle karşılaşacağınıza dair bir örnek için aşağıdaki ekran görüntüsüne bakın:
Önceki adımda init
komutu, subgraph'inizi oluşturmak için kullanabileceğiniz bir iskelet subgraph yaratır.
Subgraph'inizde değişiklik yaparken, ağırlıklı olarak üç dosya ile çalışacaksınız:
- Manifesto (
subgraph.yaml
): Subgraph'inizin hangi veri kaynaklarını endeksleyeceğini tanımlar. - Şema (
schema.graphql
): Subgraph'ten hangi veriyi almak istediğinizi tanımlar. - AssemblyScript Eşlemeleri (
mapping.ts
): Veri kaynaklarınızdan gelen veriyi şemada tanımlanan varlıklara dönüştürür.
Subgraph yazımı hakkında ayrıntılı bilgi için sayfasına göz atın.
Unutmayın; yayına almak, yayımlamakla aynı şey değildir.
Bir subgraph'i yayına aldığınızda, onu 'ya gönderirsiniz; burada subgraph'i test edebilir, yayına almaya hazırlayabilir ve inceleyebilirsiniz.
Bir subgraph'i yayımladığınızda, onu merkeziyetsiz ağda, zincir üzerinde yayımlamış olursunuz.
Subgraph'ınız yazıldıktan sonra aşağıdaki komutları çalıştırın:
```shgraph codegen && graph build```
Subgraph'inizi kimlik doğrulayıp yayına alın. Yayına alma anahtarını, Subgraph Studio'daki subgraph sayfasında bulabilirsiniz.
```shgraph auth <DEPLOY_KEY>graph deploy <SUBGRAPH_SLUG>```
The CLI will ask for a version label. It's strongly recommended to use , e.g. 0.0.1
.
If you’d like to test your subgraph before publishing it, you can use to do the following:
-
Örnek bir sorgu çalıştırabilirsiniz.
-
Subgraph'iniz hakkında bilgi kontrol etmek için kontrol panelini analiz edebilirsiniz.
-
Subgraph'inizde hata olup olmadığını görmek için kontrol panelindeki kayıtları kontrol edin. Çalışan bir subgraph'in kayıtları şu şekilde görünecektir:
Publishing a subgraph to the decentralized network is an onchain action that makes your subgraph available for to curate it and to index it.
Subgraph'inizi yayımlamak için, kontrol panelindeki Yayımla düğmesine tıklayın.
Subgraph'inizi yayımlamak istediğiniz ağı seçin.
Sürüm 0.73.0 itibarıyla, subgraph'inizi Graph CLI ile de yayımlayabilirsiniz.
graph-cli
yi açın.
Şu komutları kullanın:
```shgraph codegen && graph build```Then,```shgraph publish```
- Bir pencere açılacak, cüzdanınızı bağlayabilecek, meta verileri ekleyebilecek ve sonuçlandırılmış subgraph'inizi seçtiğiniz ağda yayımlayabileceksiniz.
Yayımlamanızı özelleştirmek için, sayfasına göz atın.
To attract Indexers to query your subgraph, you should add GRT curation signal to it.
- Bu işlem, hizmet kalitesini artırır, gecikmeyi azaltır ve subgraph'inizin ağdaki yedekliliğini ve müsaitliğini artırır.
Endeksleme ödüllerine hak kazanan Endeksleyiciler sinyal miktarına bağlı olarak GRT ödülü alırlar.
- En az 3 Endeksleyici çekmek için en az 3.000 GRT küratörlük yapmanız önerilir. Subgraph özelliği kullanımı ve desteklenen ağlara bağlı olarak ödül hak kazanımlarının nasıl dağıtıldığını kontrol edin.
Küratörlük hakkında daha fazla bilgi için sayfasını okuyun.
Gas maliyetlerinden tasarruf etmek için, subgraph'inizi küratörlük işlemini, yayımlama işlemiyle aynı anda yapabilirsiniz. Bunun için şu seçeneği seçin:
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.
Subgraph'inizden veri sorgulama hakkında daha fazla bilgi için sayfasına bakın.