Быстрый старт
Reading time: 5 min
Learn how to easily build, publish and query a on The Graph.
- Криптовалютный кошелек
- A smart contract address on a
- installed
- A package manager of your choice (
npm
,yarn
orpnpm
)
Перейдите в и подключите свой кошелек.
Subgraph Studio позволяет создавать, управлять, развертывать и публиковать субграфы, а также создавать и управлять API-ключами.
Нажмите "Создать субграф". Рекомендуется называть субграф с использованием Заглавного регистра: "Subgraph Name Chain Name".
Выполните одну из следующих команд на своём локальном компьютере:
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.
Следующая команда инициализирует ваш субграф из существующего контракта:
graph init
If your contract was verified on Etherscan, then the ABI will automatically be created in the CLI.
При инициализации субграфа CLI запросит у Вас следующую информацию:
- 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.
На следующем скриншоте показан пример того, чего следует ожидать при инициализации субграфа:
Команда init
на предыдущем шаге создает шаблон субграфа, который Вы можете использовать в качестве отправной точки для его разработки.
При внесении изменений в субграф Вы будете работать в основном с тремя файлами:
- Манифест (
subgraph.yaml
) — определяет, какие источники данных Ваш субграф будет индексировать. - Схема (
schema.graphql
) - Схема GraphQL определяет, какие данные Вы хотите извлечь из субграфа. - AssemblyScript Mappings (mapping.ts) - это код, который преобразует данные из Ваших источников данных в объекты, определенные в схеме.
Для получения более детальной информации о том, как создать свой субграф, ознакомьтесь с разделом .
Помните, развертывание — это не то же самое, что публикация.
Когда Вы развертываете субграф, Вы загружаете его в , где можете его протестировать, подготовить и просмотреть.
Когда Вы публикуете субграф, Вы публикуете его в децентрализованной сети на чейне.
После того как Ваш субграф будет написан, выполните следующие команды:
```shgraph codegen && graph build```
Аутентифицируйте и разверните свой субграф. Ключ развертывания можно найти на странице Subgraph в Subgraph Studio.
```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:
-
Запустить пример запроса.
-
Проанализировать Ваш субграф на панели управления для проверки информации.
-
Проверить логи на панели управления, чтобы убедиться, нет ли ошибок в Вашем субграфе. Логи рабочего субграфа будут выглядеть следующим образом:
Publishing a subgraph to the decentralized network is an onchain action that makes your subgraph available for to curate it and to index it.
Чтобы опубликовать свой субграф, нажмите кнопку «Опубликовать» на панели управления.
Выберите сеть, в которую хотите опубликовать свой субграф.
Начиная с версии 0.73.0, Вы также можете публиковать свой субграф с помощью Graph CLI.
Откройте graph-cli
.
Используйте следующие команды:
```shgraph codegen && graph build```Then,```shgraph publish```
- Откроется окно, где Вы сможете подключить свой кошелек, добавить метаданные и развернуть финализированный субграф в выбранной Вами сети.
Для настройки развертывания ознакомьтесь с разделом .
To attract Indexers to query your subgraph, you should add GRT curation signal to it.
- Это действие улучшает качество обслуживания, снижает задержку и увеличивает надежность и доступность сети для Вашего субграфа.
Если индексаторы имеют право на получение вознаграждений за индексацию, они получат вознаграждения в GRT, в соответствии с количеством поданного сигнала.
- Рекомендуется добавить как минимум 3,000 GRT, чтобы привлечь 3 индексаторов. Проверьте право на вознаграждение на основе использования функций субграфа и поддерживаемых сетей.
Чтобы узнать больше о кураторстве, прочитайте раздел .
Чтобы сэкономить на расходах на газ, Вы можете курировать свой субграф в той же транзакции, в которой Вы его публикуете, выбрав эту опцию:
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.
Для получения дополнительной информации о запросах данных из Вашего субграфа прочитайте раздел .