Skip to content

New Crowdin updates #921

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 290 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
290 commits
Select commit Hold shift + click to select a range
32ace24
New translations subgraph-composition.mdx (Russian)
benface Apr 8, 2025
7d177eb
New translations subgraph-composition.mdx (Swedish)
benface Apr 8, 2025
8cb7934
New translations subgraph-composition.mdx (Turkish)
benface Apr 8, 2025
689db20
New translations subgraph-composition.mdx (Ukrainian)
benface Apr 8, 2025
3f44e6c
New translations subgraph-composition.mdx (Chinese Simplified)
benface Apr 8, 2025
18fbb1f
New translations subgraph-composition.mdx (Urdu (Pakistan))
benface Apr 8, 2025
2785f8b
New translations subgraph-composition.mdx (Vietnamese)
benface Apr 8, 2025
3ea0e97
New translations subgraph-composition.mdx (Marathi)
benface Apr 8, 2025
08acc75
New translations subgraph-composition.mdx (Hindi)
benface Apr 8, 2025
5c54549
New translations index.json (Romanian)
benface Apr 9, 2025
0e5dfa9
New translations index.json (French)
benface Apr 9, 2025
2182edf
New translations index.json (Spanish)
benface Apr 9, 2025
f63d23f
New translations index.json (Arabic)
benface Apr 9, 2025
c4ae213
New translations index.json (Czech)
benface Apr 9, 2025
6ce98d1
New translations index.json (German)
benface Apr 9, 2025
9a66da9
New translations index.json (Italian)
benface Apr 9, 2025
e00db08
New translations index.json (Japanese)
benface Apr 9, 2025
f86ea14
New translations index.json (Korean)
benface Apr 9, 2025
29d2f5d
New translations index.json (Dutch)
benface Apr 9, 2025
a7c0028
New translations index.json (Polish)
benface Apr 9, 2025
0b498e7
New translations index.json (Portuguese)
benface Apr 9, 2025
16bd863
New translations index.json (Russian)
benface Apr 9, 2025
3d39b63
New translations index.json (Swedish)
benface Apr 9, 2025
ba3b44c
New translations index.json (Turkish)
benface Apr 9, 2025
29b44b2
New translations index.json (Ukrainian)
benface Apr 9, 2025
f179d3e
New translations index.json (Chinese Simplified)
benface Apr 9, 2025
ebfe96d
New translations index.json (Urdu (Pakistan))
benface Apr 9, 2025
cfe18f2
New translations index.json (Vietnamese)
benface Apr 9, 2025
4038e66
New translations index.json (Marathi)
benface Apr 9, 2025
1c85051
New translations index.json (Hindi)
benface Apr 9, 2025
08f9159
New translations quick-start.mdx (Romanian)
benface Apr 10, 2025
7282ed2
New translations quick-start.mdx (French)
benface Apr 10, 2025
86ff34b
New translations quick-start.mdx (Spanish)
benface Apr 10, 2025
b5c48f4
New translations quick-start.mdx (Arabic)
benface Apr 10, 2025
31ac920
New translations quick-start.mdx (Czech)
benface Apr 10, 2025
df07511
New translations quick-start.mdx (German)
benface Apr 10, 2025
4ed90a5
New translations quick-start.mdx (Italian)
benface Apr 10, 2025
1b4f6be
New translations quick-start.mdx (Japanese)
benface Apr 10, 2025
2228e30
New translations quick-start.mdx (Korean)
benface Apr 10, 2025
46ebf54
New translations quick-start.mdx (Dutch)
benface Apr 10, 2025
5b180af
New translations quick-start.mdx (Polish)
benface Apr 10, 2025
e685c58
New translations quick-start.mdx (Portuguese)
benface Apr 10, 2025
833aa61
New translations quick-start.mdx (Russian)
benface Apr 10, 2025
b74b8f7
New translations quick-start.mdx (Swedish)
benface Apr 10, 2025
b82aaa5
New translations quick-start.mdx (Turkish)
benface Apr 10, 2025
a96cd39
New translations quick-start.mdx (Ukrainian)
benface Apr 10, 2025
3a8e007
New translations quick-start.mdx (Chinese Simplified)
benface Apr 10, 2025
29e92b0
New translations quick-start.mdx (Urdu (Pakistan))
benface Apr 10, 2025
e08b337
New translations quick-start.mdx (Vietnamese)
benface Apr 10, 2025
f59ca8e
New translations quick-start.mdx (Marathi)
benface Apr 10, 2025
bfaf8c3
New translations quick-start.mdx (Hindi)
benface Apr 10, 2025
1bc1126
New translations quick-start.mdx (German)
benface Apr 10, 2025
210e4f2
New translations quick-start.mdx (Portuguese)
benface Apr 10, 2025
5654982
New translations quick-start.mdx (Russian)
benface Apr 10, 2025
dfd4acc
New translations quick-start.mdx (Chinese Simplified)
benface Apr 10, 2025
a202326
New translations quick-start.mdx (Spanish)
benface Apr 10, 2025
0fa5d43
New translations quick-start.mdx (French)
benface Apr 10, 2025
233d75c
New translations quick-start.mdx (Romanian)
benface Apr 10, 2025
648ba93
New translations quick-start.mdx (Arabic)
benface Apr 10, 2025
110be7c
New translations quick-start.mdx (Czech)
benface Apr 10, 2025
e23e332
New translations quick-start.mdx (Italian)
benface Apr 10, 2025
f535e3b
New translations quick-start.mdx (Japanese)
benface Apr 10, 2025
68857b6
New translations quick-start.mdx (Korean)
benface Apr 10, 2025
bc58049
New translations quick-start.mdx (Dutch)
benface Apr 10, 2025
9d6386b
New translations quick-start.mdx (Polish)
benface Apr 10, 2025
f865196
New translations quick-start.mdx (Swedish)
benface Apr 10, 2025
7bb758e
New translations quick-start.mdx (Turkish)
benface Apr 10, 2025
a84f74d
New translations quick-start.mdx (Ukrainian)
benface Apr 10, 2025
a8b076e
New translations quick-start.mdx (Urdu (Pakistan))
benface Apr 10, 2025
7f1266a
New translations quick-start.mdx (Vietnamese)
benface Apr 10, 2025
43ef1b9
New translations quick-start.mdx (Marathi)
benface Apr 10, 2025
645450e
New translations quick-start.mdx (Hindi)
benface Apr 10, 2025
69db73b
New translations overview.mdx (Romanian)
benface Apr 10, 2025
c01c8dd
New translations overview.mdx (French)
benface Apr 10, 2025
f66f381
New translations overview.mdx (Spanish)
benface Apr 10, 2025
8cebae4
New translations overview.mdx (Arabic)
benface Apr 10, 2025
04c8dbb
New translations overview.mdx (Czech)
benface Apr 10, 2025
6f1ca15
New translations overview.mdx (German)
benface Apr 10, 2025
0f9ec69
New translations overview.mdx (Italian)
benface Apr 10, 2025
023af7e
New translations overview.mdx (Japanese)
benface Apr 10, 2025
2298aea
New translations overview.mdx (Korean)
benface Apr 10, 2025
f678090
New translations overview.mdx (Dutch)
benface Apr 10, 2025
464a4af
New translations overview.mdx (Polish)
benface Apr 10, 2025
44a705e
New translations overview.mdx (Portuguese)
benface Apr 10, 2025
1c94a42
New translations overview.mdx (Russian)
benface Apr 10, 2025
dfad86c
New translations overview.mdx (Swedish)
benface Apr 10, 2025
f7fbc53
New translations overview.mdx (Turkish)
benface Apr 10, 2025
7903a40
New translations overview.mdx (Ukrainian)
benface Apr 10, 2025
e064f2b
New translations overview.mdx (Chinese Simplified)
benface Apr 10, 2025
5fb423f
New translations overview.mdx (Urdu (Pakistan))
benface Apr 10, 2025
697166c
New translations overview.mdx (Vietnamese)
benface Apr 10, 2025
976de55
New translations overview.mdx (Marathi)
benface Apr 10, 2025
9ce0635
New translations overview.mdx (Hindi)
benface Apr 10, 2025
f6a8c46
New translations explorer.mdx (German)
benface Apr 10, 2025
c1f5344
New translations explorer.mdx (Japanese)
benface Apr 10, 2025
cdb90ec
New translations explorer.mdx (Portuguese)
benface Apr 10, 2025
c3a3444
New translations explorer.mdx (Russian)
benface Apr 10, 2025
ed2875c
New translations explorer.mdx (French)
benface Apr 10, 2025
6fc7461
New translations explorer.mdx (Romanian)
benface Apr 10, 2025
fda0ad5
New translations explorer.mdx (Spanish)
benface Apr 10, 2025
aadcb1f
New translations explorer.mdx (Arabic)
benface Apr 10, 2025
9c16612
New translations explorer.mdx (Czech)
benface Apr 10, 2025
86dffb3
New translations explorer.mdx (Italian)
benface Apr 10, 2025
49db568
New translations explorer.mdx (Korean)
benface Apr 10, 2025
fbb1e25
New translations explorer.mdx (Dutch)
benface Apr 10, 2025
4b03c09
New translations explorer.mdx (Polish)
benface Apr 10, 2025
f638396
New translations explorer.mdx (Swedish)
benface Apr 10, 2025
d1dcd37
New translations explorer.mdx (Turkish)
benface Apr 10, 2025
ceae5c8
New translations explorer.mdx (Ukrainian)
benface Apr 10, 2025
5fcf0d9
New translations explorer.mdx (Chinese Simplified)
benface Apr 10, 2025
f02dd50
New translations explorer.mdx (Urdu (Pakistan))
benface Apr 10, 2025
ba8793a
New translations explorer.mdx (Vietnamese)
benface Apr 10, 2025
e5814bb
New translations explorer.mdx (Marathi)
benface Apr 10, 2025
cdcf607
New translations explorer.mdx (Hindi)
benface Apr 10, 2025
da81dc1
New translations about.mdx (Romanian)
benface Apr 14, 2025
bcf9398
New translations about.mdx (French)
benface Apr 14, 2025
6e32b89
New translations about.mdx (Spanish)
benface Apr 14, 2025
e57c75f
New translations about.mdx (Arabic)
benface Apr 14, 2025
bb1e1c7
New translations about.mdx (Czech)
benface Apr 14, 2025
f2d9b6a
New translations about.mdx (German)
benface Apr 14, 2025
adfd58d
New translations about.mdx (Italian)
benface Apr 14, 2025
8981bcd
New translations about.mdx (Japanese)
benface Apr 14, 2025
3518596
New translations about.mdx (Korean)
benface Apr 14, 2025
f4d1564
New translations about.mdx (Dutch)
benface Apr 14, 2025
6960338
New translations about.mdx (Polish)
benface Apr 14, 2025
fb63e7d
New translations about.mdx (Portuguese)
benface Apr 14, 2025
62854c9
New translations about.mdx (Russian)
benface Apr 14, 2025
e284094
New translations about.mdx (Swedish)
benface Apr 14, 2025
59e2130
New translations about.mdx (Turkish)
benface Apr 14, 2025
a588a99
New translations about.mdx (Ukrainian)
benface Apr 14, 2025
43a5fc8
New translations about.mdx (Chinese Simplified)
benface Apr 14, 2025
8d8b338
New translations about.mdx (Urdu (Pakistan))
benface Apr 14, 2025
32bdc56
New translations about.mdx (Vietnamese)
benface Apr 14, 2025
11ae5ce
New translations about.mdx (Marathi)
benface Apr 14, 2025
f10559a
New translations about.mdx (Hindi)
benface Apr 14, 2025
4e7f904
New translations tap.mdx (German)
benface Apr 14, 2025
15525d8
New translations tap.mdx (Portuguese)
benface Apr 14, 2025
70af7b7
New translations tap.mdx (Hindi)
benface Apr 14, 2025
7243823
New translations enums.mdx (Russian)
benface Apr 14, 2025
515bf6b
New translations enums.mdx (Turkish)
benface Apr 14, 2025
3712b31
New translations enums.mdx (Hindi)
benface Apr 14, 2025
be5803c
New translations tap.mdx (French)
benface Apr 14, 2025
a9d0804
New translations tap.mdx (Russian)
benface Apr 14, 2025
8b6977d
New translations tap.mdx (Turkish)
benface Apr 14, 2025
086e8d5
New translations tokenomics.mdx (Hindi)
benface Apr 14, 2025
b64cfe7
New translations quick-start.mdx (Japanese)
benface Apr 15, 2025
0540cae
New translations quick-start.mdx (Russian)
benface Apr 15, 2025
cd9ef7c
New translations quick-start.mdx (Turkish)
benface Apr 15, 2025
763128a
New translations quick-start.mdx (French)
benface Apr 15, 2025
332220b
New translations quick-start.mdx (Romanian)
benface Apr 15, 2025
c36c104
New translations quick-start.mdx (Spanish)
benface Apr 15, 2025
4ba5cd1
New translations quick-start.mdx (Arabic)
benface Apr 15, 2025
d18cc61
New translations quick-start.mdx (Czech)
benface Apr 15, 2025
3a47aa7
New translations quick-start.mdx (German)
benface Apr 15, 2025
829be84
New translations quick-start.mdx (Italian)
benface Apr 15, 2025
7743382
New translations quick-start.mdx (Korean)
benface Apr 15, 2025
4beaa22
New translations quick-start.mdx (Dutch)
benface Apr 15, 2025
70e0f0a
New translations quick-start.mdx (Polish)
benface Apr 15, 2025
2077ca5
New translations quick-start.mdx (Portuguese)
benface Apr 15, 2025
299f2f1
New translations quick-start.mdx (Swedish)
benface Apr 15, 2025
b53a340
New translations quick-start.mdx (Ukrainian)
benface Apr 15, 2025
d5446a1
New translations quick-start.mdx (Chinese Simplified)
benface Apr 15, 2025
a8f250b
New translations quick-start.mdx (Urdu (Pakistan))
benface Apr 15, 2025
e020e37
New translations quick-start.mdx (Vietnamese)
benface Apr 15, 2025
29dd509
New translations quick-start.mdx (Marathi)
benface Apr 15, 2025
8daa2f2
New translations quick-start.mdx (Hindi)
benface Apr 15, 2025
b4dc544
New translations using-subgraph-studio.mdx (Romanian)
benface Apr 16, 2025
99cad78
New translations using-subgraph-studio.mdx (French)
benface Apr 16, 2025
0d7c6bb
New translations using-subgraph-studio.mdx (Spanish)
benface Apr 16, 2025
801dbb0
New translations using-subgraph-studio.mdx (Arabic)
benface Apr 16, 2025
7b93ecc
New translations using-subgraph-studio.mdx (Czech)
benface Apr 16, 2025
cb48e0a
New translations using-subgraph-studio.mdx (German)
benface Apr 16, 2025
2cd077e
New translations using-subgraph-studio.mdx (Italian)
benface Apr 16, 2025
2e404e6
New translations using-subgraph-studio.mdx (Japanese)
benface Apr 16, 2025
c994a1f
New translations using-subgraph-studio.mdx (Korean)
benface Apr 16, 2025
e05d139
New translations using-subgraph-studio.mdx (Dutch)
benface Apr 16, 2025
ae733c0
New translations using-subgraph-studio.mdx (Polish)
benface Apr 16, 2025
bda1fde
New translations using-subgraph-studio.mdx (Portuguese)
benface Apr 16, 2025
b106916
New translations using-subgraph-studio.mdx (Russian)
benface Apr 16, 2025
f09d135
New translations using-subgraph-studio.mdx (Swedish)
benface Apr 16, 2025
d7f21ba
New translations using-subgraph-studio.mdx (Turkish)
benface Apr 16, 2025
6356f2f
New translations using-subgraph-studio.mdx (Ukrainian)
benface Apr 16, 2025
34b5907
New translations using-subgraph-studio.mdx (Chinese Simplified)
benface Apr 16, 2025
806d128
New translations using-subgraph-studio.mdx (Urdu (Pakistan))
benface Apr 16, 2025
fe25695
New translations using-subgraph-studio.mdx (Vietnamese)
benface Apr 16, 2025
49fffcd
New translations using-subgraph-studio.mdx (Marathi)
benface Apr 16, 2025
320eff7
New translations using-subgraph-studio.mdx (Hindi)
benface Apr 16, 2025
6b1dd07
New translations quick-start.mdx (Romanian)
benface Apr 23, 2025
06c2fef
New translations quick-start.mdx (French)
benface Apr 23, 2025
e8cde64
New translations quick-start.mdx (Spanish)
benface Apr 23, 2025
0c982c3
New translations quick-start.mdx (Arabic)
benface Apr 23, 2025
ae23eed
New translations quick-start.mdx (Czech)
benface Apr 23, 2025
ae64e9b
New translations quick-start.mdx (German)
benface Apr 23, 2025
34e41fc
New translations quick-start.mdx (Italian)
benface Apr 23, 2025
8ffcec0
New translations quick-start.mdx (Japanese)
benface Apr 23, 2025
3686d3a
New translations quick-start.mdx (Korean)
benface Apr 23, 2025
6453bde
New translations quick-start.mdx (Dutch)
benface Apr 23, 2025
bbcf52d
New translations quick-start.mdx (Polish)
benface Apr 23, 2025
421e72f
New translations quick-start.mdx (Portuguese)
benface Apr 23, 2025
d4f07e9
New translations quick-start.mdx (Russian)
benface Apr 23, 2025
374d202
New translations quick-start.mdx (Swedish)
benface Apr 23, 2025
ccca7b0
New translations quick-start.mdx (Turkish)
benface Apr 23, 2025
a20c1b2
New translations quick-start.mdx (Ukrainian)
benface Apr 23, 2025
de953ce
New translations quick-start.mdx (Chinese Simplified)
benface Apr 23, 2025
d4325d4
New translations quick-start.mdx (Urdu (Pakistan))
benface Apr 23, 2025
abd71cf
New translations quick-start.mdx (Vietnamese)
benface Apr 23, 2025
bc0ad81
New translations quick-start.mdx (Marathi)
benface Apr 23, 2025
fb1e84f
New translations quick-start.mdx (Hindi)
benface Apr 23, 2025
9fc1392
New translations graphql-api.mdx (Romanian)
benface Apr 23, 2025
e6497c3
New translations graphql-api.mdx (French)
benface Apr 23, 2025
e721963
New translations graphql-api.mdx (Spanish)
benface Apr 23, 2025
36fe1cc
New translations graphql-api.mdx (Arabic)
benface Apr 23, 2025
9359522
New translations graphql-api.mdx (Czech)
benface Apr 23, 2025
1c81afd
New translations graphql-api.mdx (German)
benface Apr 23, 2025
21fa997
New translations graphql-api.mdx (Italian)
benface Apr 23, 2025
f6e4812
New translations graphql-api.mdx (Japanese)
benface Apr 23, 2025
65f96ad
New translations graphql-api.mdx (Korean)
benface Apr 23, 2025
6bcfae3
New translations graphql-api.mdx (Dutch)
benface Apr 23, 2025
783463c
New translations graphql-api.mdx (Polish)
benface Apr 23, 2025
399e07a
New translations graphql-api.mdx (Portuguese)
benface Apr 23, 2025
d3c3178
New translations graphql-api.mdx (Russian)
benface Apr 23, 2025
55f00c4
New translations graphql-api.mdx (Swedish)
benface Apr 23, 2025
0e97935
New translations graphql-api.mdx (Turkish)
benface Apr 23, 2025
0861075
New translations graphql-api.mdx (Ukrainian)
benface Apr 23, 2025
39a5025
New translations graphql-api.mdx (Chinese Simplified)
benface Apr 23, 2025
2b24952
New translations graphql-api.mdx (Urdu (Pakistan))
benface Apr 23, 2025
7c0c93f
New translations graphql-api.mdx (Vietnamese)
benface Apr 23, 2025
ee2aac2
New translations graphql-api.mdx (Marathi)
benface Apr 23, 2025
839ae7d
New translations graphql-api.mdx (Hindi)
benface Apr 23, 2025
bb594ea
New translations graph-node.mdx (Romanian)
benface Apr 25, 2025
7ee7edd
New translations graph-node.mdx (French)
benface Apr 25, 2025
0158e8c
New translations graph-node.mdx (Spanish)
benface Apr 25, 2025
7c59e23
New translations graph-node.mdx (Arabic)
benface Apr 25, 2025
b136c73
New translations graph-node.mdx (Czech)
benface Apr 25, 2025
1ea97ba
New translations graph-node.mdx (German)
benface Apr 25, 2025
ef5375b
New translations graph-node.mdx (Italian)
benface Apr 25, 2025
114e021
New translations graph-node.mdx (Japanese)
benface Apr 25, 2025
eb28b7f
New translations graph-node.mdx (Korean)
benface Apr 25, 2025
2655034
New translations graph-node.mdx (Dutch)
benface Apr 25, 2025
035c762
New translations graph-node.mdx (Polish)
benface Apr 25, 2025
35c1ea2
New translations graph-node.mdx (Portuguese)
benface Apr 25, 2025
5d15b79
New translations graph-node.mdx (Russian)
benface Apr 25, 2025
0fa2f7e
New translations graph-node.mdx (Swedish)
benface Apr 25, 2025
b6ac408
New translations graph-node.mdx (Turkish)
benface Apr 25, 2025
311d107
New translations graph-node.mdx (Ukrainian)
benface Apr 25, 2025
46566ba
New translations graph-node.mdx (Chinese Simplified)
benface Apr 25, 2025
268974f
New translations graph-node.mdx (Urdu (Pakistan))
benface Apr 25, 2025
408f4c6
New translations graph-node.mdx (Vietnamese)
benface Apr 25, 2025
71d58fe
New translations graph-node.mdx (Marathi)
benface Apr 25, 2025
5ba8cd2
New translations graph-node.mdx (Hindi)
benface Apr 25, 2025
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
66 changes: 27 additions & 39 deletions website/src/pages/ar/about.mdx
Original file line number Diff line number Diff line change
@@ -1,67 +1,55 @@
---
title: حول The Graph
title: About The Graph
description: This page summarizes the core concepts and basics of The Graph Network.
---

## What is The Graph?
## Explanation

The Graph is a powerful decentralized protocol that enables seamless querying and indexing of blockchain data. It simplifies the complex process of querying blockchain data, making dapp development faster and easier.
### What is The Graph?

## Understanding the Basics
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/).

Projects with complex smart contracts such as [Uniswap](https://uniswap.org/) and NFTs initiatives like [Bored Ape Yacht Club](https://boredapeyachtclub.com/) store data on the Ethereum blockchain, making it very difficult to read anything other than basic data directly from the blockchain.
The Graph supports [90+ blockchains](/supported-networks/), enhancing dapp development and data retrieval.

### Challenges Without The Graph
### Why is Blockchain Data Hard to Query?

In the case of the example listed above, Bored Ape Yacht Club, you can perform basic read operations on [the contract](https://etherscan.io/address/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d#code). You can read the owner of a certain Ape, read the content URI of an Ape based on their ID, or read the total supply.
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.

- This can be done because these read operations are programmed directly into the smart contract itself. However, more advanced, specific, and real-world queries and operations like aggregation, search, relationships, and non-trivial filtering, **are not possible**.
## Solution

- For instance, if you want to inquire about Apes owned by a specific address and refine your search based on a particular characteristic, you would not be able to obtain that information by directly interacting with the contract itself.
### How The Graph Solves This

- To get more data, you would have to process every single [`transfer`](https://etherscan.io/address/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d#code#L1746) event ever emitted, read the metadata from IPFS using the Token ID and IPFS hash, and then aggregate it.
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.

### Why is this a problem?
Each Subgraph defines:

It would take **hours or even days** for a decentralized application (dapp) running in a browser to get an answer to these simple questions.
- Which smart contracts to watch
- Which events to extract
- How to map event data into a queryable format using [GraphQL](https://graphql.org/learn/)

Alternatively, you have the option to set up your own server, process the transactions, store them in a database, and create an API endpoint to query the data. However, this option is [resource intensive](/resources/benefits/), needs maintenance, presents a single point of failure, and breaks important security properties required for decentralization.
### [Building a Subgraph](/subgraphs/developing/creating/starting-your-subgraph/)

Blockchain properties, such as finality, chain reorganizations, and uncled blocks, add complexity to the process, making it time-consuming and conceptually challenging to retrieve accurate query results from blockchain data.
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/).

## The Graph Provides a Solution
### Data Flow Overview

The Graph solves this challenge with a decentralized protocol that indexes and enables the efficient and high-performance querying of blockchain data. These APIs (indexed "Subgraphs") can then be queried with a standard GraphQL API.
1. A dapp triggers a transaction on Ethereum by interacting with a smart contract.

Today, there is a decentralized protocol that is backed by the open source implementation of [Graph Node](https://github.com/graphprotocol/graph-node) that enables this process.
2. As the transaction is processed, the smart contract emits one or more events.

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

Indexing blockchain data is very difficult, but The Graph makes it easy. The Graph learns how to index Ethereum data by using Subgraphs. Subgraphs are custom APIs built on blockchain data that extract data from a blockchain, processes it, and stores it so that it can be seamlessly queried via GraphQL.
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.

#### Specifics

- The Graph uses Subgraph descriptions, which are known as the Subgraph manifest inside the Subgraph.

- The Subgraph description outlines the smart contracts of interest for a Subgraph, the events within those contracts to focus on, and how to map event data to the data that The Graph will store in its database.

- When creating a Subgraph, you need to write a Subgraph manifest.

- After writing the `subgraph manifest`, you can use the Graph CLI to store the definition in IPFS and instruct an Indexer to start indexing data for that Subgraph.
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)

تدفق البيانات يتبع الخطوات التالية:

1. A dapp adds data to Ethereum through a transaction on a smart contract.
2. العقد الذكي يصدر حدثا واحدا أو أكثر أثناء معالجة الإجراء.
3. Graph Node continually scans Ethereum for new blocks and the data for your Subgraph they may contain.
4. Graph Node finds Ethereum events for your Subgraph in these blocks and runs the mapping handlers you provided. The mapping is a WASM module that creates or updates the data entities that Graph Node stores in response to Ethereum events.
5. The dapp queries the Graph Node for data indexed from the blockchain, using the node's [GraphQL endpoint](https://graphql.org/learn/). The Graph Node in turn translates the GraphQL queries into queries for its underlying data store in order to fetch this data, making use of the store's indexing capabilities. The dapp displays this data in a rich UI for end-users, which they use to issue new transactions on Ethereum. The cycle repeats.

## الخطوات التالية

The following sections provide a more in-depth look at Subgraphs, their deployment and data querying.

Before you write your own Subgraph, it's recommended to explore [Graph Explorer](https://thegraph.com/explorer) and review some of the already deployed Subgraphs. Each Subgraph's page includes a GraphQL playground, allowing you to query its data.
Explore [Graph Explorer](https://thegraph.com/explorer) to view and query existing Subgraphs.
22 changes: 19 additions & 3 deletions website/src/pages/ar/index.json
Original file line number Diff line number Diff line change
Expand Up @@ -79,10 +79,22 @@
"title": "Subgraph quick start",
"description": "Kickstart your journey into subgraph development."
},
"substreams": {
"title": "متعدد-السلاسل",
"substreamsQuickStart": {
"title": "Substreams quick start",
"description": "Stream high-speed data for real-time indexing."
},
"tokenapi": {
"title": "The Graph's Token API",
"description": "Query token data and leverage native MCP support."
},
"graphExplorer": {
"title": "Graph Explorer",
"description": "Find and query existing blockchain data."
},
"substreamsDev": {
"title": "Substreams.dev",
"description": "Access tutorials, templates, and documentation to build custom data modules."
},
"timeseries": {
"title": "Timeseries & Aggregations",
"description": "Learn to track metrics like daily volumes or user growth."
Expand All @@ -109,12 +121,16 @@
"title": "Substreams.dev",
"description": "Access tutorials, templates, and documentation to build custom data modules."
},
"customSubstreamsSinks": {
"title": "Custom Substreams Sinks",
"description": "Leverage existing Substreams sinks to access data."
},
"substreamsStarter": {
"title": "Substreams starter",
"description": "Leverage this boilerplate to create your first Substreams module."
},
"substreamsRepo": {
"title": "Substreams repo",
"title": "Substreams GitHub repository",
"description": "Study, contribute to, or customize the core Substreams framework."
}
}
Expand Down
34 changes: 17 additions & 17 deletions website/src/pages/ar/indexing/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -110,12 +110,12 @@ Indexers may differentiate themselves by applying advanced techniques for making
- **Medium** - Production Indexer supporting 100 Subgraphs and 200-500 requests per second.
- **Large** - Prepared to index all currently used Subgraphs and serve requests for the related traffic.

| Setup | Postgres<br />(CPUs) | Postgres<br />(memory in GBs) | Postgres<br />(disk in TBs) | VMs<br />(CPUs) | VMs<br />(memory in GBs) |
| --- | :-: | :-: | :-: | :-: | :-: |
| Small | 4 | 8 | 1 | 4 | 16 |
| Standard | 8 | 30 | 1 | 12 | 48 |
| Medium | 16 | 64 | 2 | 32 | 64 |
| Large | 72 | 468 | 3.5 | 48 | 184 |
| Setup | Postgres<br />(CPUs) | Postgres<br />(memory in GBs) | Postgres<br />(disk in TBs) | VMs<br />(CPUs) | VMs<br />(memory in GBs) |
| -------- | :------------------: | :---------------------------: | :-------------------------: | :-------------: | :----------------------: |
| Small | 4 | 8 | 1 | 4 | 16 |
| Standard | 8 | 30 | 1 | 12 | 48 |
| Medium | 16 | 64 | 2 | 32 | 64 |
| Large | 72 | 468 | 3.5 | 48 | 184 |

### What are some basic security precautions an Indexer should take?

Expand Down Expand Up @@ -147,20 +147,20 @@ Note: To support agile scaling, it is recommended that query and indexing concer

#### Graph Node

| Port | Purpose | Routes | CLI Argument | Environment Variable |
| --- | --- | --- | --- | --- |
| 8000 | GraphQL HTTP server<br />(for Subgraph queries) | /subgraphs/id/...<br />/subgraphs/name/.../... | \--http-port | - |
| 8001 | GraphQL WS<br />(for Subgraph subscriptions) | /subgraphs/id/...<br />/subgraphs/name/.../... | \--ws-port | - |
| 8020 | JSON-RPC<br />(for managing deployments) | / | \--admin-port | - |
| 8030 | Subgraph indexing status API | /graphql | \--index-node-port | - |
| 8040 | Prometheus metrics | /metrics | \--metrics-port | - |
| Port | Purpose | Routes | CLI Argument | Environment Variable |
| ---- | ----------------------------------------------- | ---------------------------------------------- | ------------------ | -------------------- |
| 8000 | GraphQL HTTP server<br />(for Subgraph queries) | /subgraphs/id/...<br />/subgraphs/name/.../... | \--http-port | - |
| 8001 | GraphQL WS<br />(for Subgraph subscriptions) | /subgraphs/id/...<br />/subgraphs/name/.../... | \--ws-port | - |
| 8020 | JSON-RPC<br />(for managing deployments) | / | \--admin-port | - |
| 8030 | Subgraph indexing status API | /graphql | \--index-node-port | - |
| 8040 | Prometheus metrics | /metrics | \--metrics-port | - |

#### Indexer Service

| Port | Purpose | Routes | CLI Argument | Environment Variable |
| --- | --- | --- | --- | --- |
| 7600 | GraphQL HTTP server<br />(for paid Subgraph queries) | /subgraphs/id/...<br />/status<br />/channel-messages-inbox | \--port | `INDEXER_SERVICE_PORT` |
| 7300 | Prometheus metrics | /metrics | \--metrics-port | - |
| Port | Purpose | Routes | CLI Argument | Environment Variable |
| ---- | ---------------------------------------------------- | ----------------------------------------------------------- | --------------- | ---------------------- |
| 7600 | GraphQL HTTP server<br />(for paid Subgraph queries) | /subgraphs/id/...<br />/status<br />/channel-messages-inbox | \--port | `INDEXER_SERVICE_PORT` |
| 7300 | Prometheus metrics | /metrics | \--metrics-port | - |

#### Indexer Agent

Expand Down
18 changes: 8 additions & 10 deletions website/src/pages/ar/indexing/tooling/graph-node.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -77,13 +77,13 @@ A complete Kubernetes example configuration can be found in the [indexer reposit

When it is running Graph Node exposes the following ports:

| Port | Purpose | Routes | CLI Argument | Environment Variable |
| --- | --- | --- | --- | --- |
| 8000 | GraphQL HTTP server<br />(for Subgraph queries) | /subgraphs/id/...<br />/subgraphs/name/.../... | \--http-port | - |
| 8001 | GraphQL WS<br />(for Subgraph subscriptions) | /subgraphs/id/...<br />/subgraphs/name/.../... | \--ws-port | - |
| 8020 | JSON-RPC<br />(for managing deployments) | / | \--admin-port | - |
| 8030 | Subgraph indexing status API | /graphql | \--index-node-port | - |
| 8040 | Prometheus metrics | /metrics | \--metrics-port | - |
| Port | Purpose | Routes | CLI Argument | Environment Variable |
| ---- | ----------------------------------------------- | ---------------------------------------------- | ------------------ | -------------------- |
| 8000 | GraphQL HTTP server<br />(for Subgraph queries) | /subgraphs/id/...<br />/subgraphs/name/.../... | \--http-port | - |
| 8001 | GraphQL WS<br />(for Subgraph subscriptions) | /subgraphs/id/...<br />/subgraphs/name/.../... | \--ws-port | - |
| 8020 | JSON-RPC<br />(for managing deployments) | / | \--admin-port | - |
| 8030 | Subgraph indexing status API | /graphql | \--index-node-port | - |
| 8040 | Prometheus metrics | /metrics | \--metrics-port | - |

> **Important**: Be careful about exposing ports publicly - **administration ports** should be kept locked down. This includes the the Graph Node JSON-RPC endpoint.

Expand Down Expand Up @@ -330,7 +330,7 @@ Database tables that store entities seem to generally come in two varieties: 'tr

For account-like tables, `graph-node` can generate queries that take advantage of details of how Postgres ends up storing data with such a high rate of change, namely that all of the versions for recent blocks are in a small subsection of the overall storage for such a table.

The command `graphman stats show <sgdNNNN`> shows, for each entity type/table in a deployment, how many distinct entities, and how many entity versions each table contains. That data is based on Postgres-internal estimates, and is therefore necessarily imprecise, and can be off by an order of magnitude. A `-1` in the `entities` column means that Postgres believes that all rows contain a distinct entity.
The command `graphman stats show <sgdNNNN>` shows, for each entity type/table in a deployment, how many distinct entities, and how many entity versions each table contains. That data is based on Postgres-internal estimates, and is therefore necessarily imprecise, and can be off by an order of magnitude. A `-1` in the `entities` column means that Postgres believes that all rows contain a distinct entity.

In general, tables where the number of distinct entities are less than 1% of the total number of rows/entity versions are good candidates for the account-like optimization. When the output of `graphman stats show` indicates that a table might benefit from this optimization, running `graphman stats show <sgdNNN> <table>` will perform a full count of the table - that can be slow, but gives a precise measure of the ratio of distinct entities to overall entity versions.

Expand All @@ -340,6 +340,4 @@ For Uniswap-like Subgraphs, the `pair` and `token` tables are prime candidates f

#### Removing Subgraphs

> This is new functionality, which will be available in Graph Node 0.29.x

At some point an indexer might want to remove a given Subgraph. This can be easily done via `graphman drop`, which deletes a deployment and all it's indexed data. The deployment can be specified as either a Subgraph name, an IPFS hash `Qm..`, or the database namespace `sgdNNN`. Further documentation is available [here](https://github.com/graphprotocol/graph-node/blob/master/docs/graphman.md#-drop).
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,8 @@ graph auth <DEPLOY KEY>
Once you are ready, you can deploy your Subgraph to Subgraph Studio.

> Deploying a Subgraph with the CLI pushes it to the Studio, where you can test it and update the metadata. This action won't publish your Subgraph to the decentralized network.
>
> **Note**: Each account is limited to 3 deployed (unpublished) Subgraphs. If you reach this limit, you must archive or publish existing Subgraphs before deploying new ones.

Use the following CLI command to deploy your Subgraph:

Expand All @@ -104,6 +106,8 @@ After running this command, the CLI will ask for a version label.

After deploying, you can test your Subgraph (either in Subgraph Studio or in your own app, with the deployment query URL), deploy another version, update the metadata, and publish to [Graph Explorer](https://thegraph.com/explorer) when you are ready.

> **Note**: The development query URL is limited to 3,000 queries per day.

Use Subgraph Studio to check the logs on the dashboard and look for any errors with your Subgraph.

## Publish Your Subgraph
Expand Down
Loading