Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 23 additions & 32 deletions website/src/pages/en/about.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,53 +3,44 @@ title: About The Graph
description: This page summarizes the core concepts and basics of The Graph Network.
---

## Explanation
## What is The Graph?

### What is The Graph?
The Graph is a decentralized protocol for indexing and querying blockchain data across [90+ networks](/supported-networks/).

The Graph is a decentralized protocol for indexing and querying blockchain data. Its suite includes [Subgraphs](/subgraphs/developing/subgraphs/), [Substreams](/substreams/introduction/), [Token API BETA](/token-api/quick-start/), and tools like [Graph Explorer](/subgraphs/explorer/) and [Subgraph Studio](/subgraphs/developing/deploying/using-subgraph-studio/).
Its data services include:

The Graph supports [90+ blockchains](/supported-networks/), enhancing dapp development and data retrieval.
- [Subgraphs](/subgraphs/developing/subgraphs/): Open APIs to query blockchain data that can be created or queried by anyone.
- [Substreams](/substreams/introduction/): High-performance data streams for real-time blockchain processing, built with modular components.
- [Token API Beta](/token-api/quick-start/): Instant access to standardized token data requiring zero setup.

### Why is Blockchain Data Hard to Query?
### Why Blockchain Data is Difficult to Query

Reading onchain data from the blockchain (e.g., ownership history, metadata, relationships between assets) typically requires processing smart contract events, parsing metadata from IPFS, and aggregating data manually. This is very slow, complex, and resource-intensive.
Reading data from blockchains requires processing smart contract events, parsing metadata from IPFS, and manually aggregating data.

## Solution
The result is slow performance, complex infrastructure, and scalability issues.

### How The Graph Solves This
## How The Graph Solves This

The Graph simplifies the complex process of retrieving blockchain data through a global, decentralized network of Indexers that index Subgraphs. This infrastructure facilitates efficient, censorship-resistant query handling, allowing developers to build applications using blockchain data without the hassle of managing servers or custom indexing.
The Graph uses a combination of cutting-edge research, core dev expertise, and independent Indexers to make blockchain data accessible for developers.

Each Subgraph defines:
Find the perfect data service for you:

- Which smart contracts to watch
- Which events to extract
- How to map event data into a queryable format using [GraphQL](https://graphql.org/learn/)
### 1. Custom Real-Time Data Streams

### [Building a Subgraph](/subgraphs/developing/creating/starting-your-subgraph/)
**Use Case:** High-frequency trading, live analytics.

1. Define a [Subgraph Manifest](/subgraphs/developing/creating/subgraph-manifest/) with data sources and mappings.
2. Use [Graph CLI](https://github.com/graphprotocol/graph-tooling/tree/main/packages/cli) to deploy the manifest to IPFS.
3. An [Indexer](/indexing/overview/) picks it up and starts indexing Ethereum blocks.
4. Data becomes queryable via a [GraphQL endpoint](/subgraphs/querying/graphql-api/).
- [Build Substreams](/substreams/introduction/)
- [Browse Community Substreams](https://substreams.dev/)

### Data Flow Overview
### 2. Instant Token Data

1. A dapp triggers a transaction on Ethereum by interacting with a smart contract.
**Use Case:** Wallet balances, liquidity pools, transfer events.

2. As the transaction is processed, the smart contract emits one or more events.
- [Start with Token API](/token-api/quick-start/)

3. [Graph Node](/indexing/tooling/graph-node/) continuously scans the Ethereum blockchain for new blocks and filters for events relevant to a deployed Subgraph.
### 3. Flexible Historical Queries

4. When a matching event is identified, Graph Node executes the Subgraph’s mapping logic, which is a WASM module that transforms event data into structured entities. These entities are subsequently stored and indexed.
**Use Case:** Dapp frontends, custom analytics.

5. The dapp queries the Graph Node via a [GraphQL API](https://graphql.org/learn/), retrieving indexed data to render in the UI. Users can then take actions that generate new transactions, continuing the cycle.

The diagram below provides more detailed information about the flow of data after a Subgraph manifest has been deployed with Ethereum transactions.

![A graphic explaining how The Graph uses Graph Node to serve queries to data consumers](/img/graph-dataflow.png)

## Next Steps

Explore [Graph Explorer](https://thegraph.com/explorer) to view and query existing Subgraphs.
- [Explore Subgraphs](https://thegraph.com/explorer)
- [Build Your Subgraph](/subgraphs/quick-start)