Skip to content

Commit 9d3b63f

Browse files
chowbaomollykarcherElliotFriend
authored
Reorganize data landing page (#1382)
* Reorganize data landing page * remove overview from build your own * fix typos * Add chart for rpc vs horizon * Update docs/data/README.mdx Co-authored-by: Molly Karcher <[email protected]> * Update docs/data/indexing/README.mdx Co-authored-by: Molly Karcher <[email protected]> * address comments * Add tutorials * address comments * Update hubble description * expand dropdown * Merge fixes * remove duplicate indexers * update redirects * Fix rpc link * Update docs/build/apps/moneygram-access-integration-guide.mdx Co-authored-by: Elliot Voris <[email protected]> * remove double slash * No uppercase all for data dropdown * fix links from merge * fix dropdown spacing * fix merge links * drop the s from apis in the dropdown --------- Co-authored-by: Molly Karcher <[email protected]> Co-authored-by: Elliot Voris <[email protected]>
1 parent f7d80a7 commit 9d3b63f

File tree

299 files changed

+807
-507
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

299 files changed

+807
-507
lines changed

config/sidebars.ts

Lines changed: 71 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,44 @@ const sidebars: SidebarsConfig = {
2121
],
2222
data_overview: [
2323
'data/README',
24-
{ type: 'ref', id: 'data/rpc/README', label: 'Stellar RPC'},
25-
{ type: 'ref', id: 'data/hubble/README', label: 'Hubble'},
26-
{ type: 'ref', id: 'data/horizon/README', label: 'Horizon'},
27-
{ type: 'ref', id: 'data/galexie/README', label: 'Galexie'},
28-
{ type: 'ref', id: 'data/data-indexers/README', label: 'Data Indexers'},
29-
{ type: 'ref', id: 'data/oracles/README', label: 'Oracles'},
24+
{
25+
type: 'category',
26+
label: 'Analytics',
27+
link: { type: 'doc', id: 'data/analytics/README' },
28+
items: [
29+
{ type: 'ref', id: 'data/analytics/hubble/README', label: 'Hubble' },
30+
{ type: 'ref', id: 'data/analytics/analytics-providers/analytics-providers', label: 'Data Analytics Providers' },
31+
]
32+
},
33+
{
34+
type: 'category',
35+
label: 'APIs',
36+
link: { type: 'doc', id: 'data/apis/README' },
37+
items: [
38+
{ type: 'ref', id: 'data/apis/rpc/README', label: 'RPC' },
39+
{ type: 'ref', id: 'data/apis/horizon/README', label: 'Horizon' },
40+
{ type: 'ref', id: 'data/apis/migrate-from-horizon-to-rpc/migrate-from-horizon-to-rpc', label: 'Migrate Horizon to RPC' },
41+
{ type: 'ref', id: 'data/apis/rpc/rpc-providers', label: 'RPC Providers' },
42+
{ type: 'ref', id: 'data/apis/horizon/horizon-providers', label: 'Horizon Providers' },
43+
]
44+
},
45+
{
46+
type: 'category',
47+
label: 'Indexers',
48+
link: { type: 'doc', id: 'data/indexers/README' },
49+
items: [
50+
{ type: 'ref', id: 'data/indexers/build-your-own/README', label: 'Build Your Own Indexer' },
51+
{ type: 'ref', id: 'data/indexers/indexer-providers/indexer-providers', label: 'Indexer Providers' },
52+
]
53+
},
54+
{
55+
type: 'category',
56+
label: 'Oracles',
57+
link: { type: 'doc', id: 'data/oracles/README' },
58+
items: [
59+
{ type: 'ref', id: 'data/oracles/oracle-providers', label: 'Oracle Providers' },
60+
]
61+
},
3062
],
3163
tools: [
3264
{
@@ -56,7 +88,7 @@ const sidebars: SidebarsConfig = {
5688
items: [
5789
{
5890
type: "autogenerated",
59-
dirName: "data/horizon",
91+
dirName: "data/apis/horizon",
6092
},
6193
],
6294
collapsible: false,
@@ -69,7 +101,7 @@ const sidebars: SidebarsConfig = {
69101
items: [
70102
{
71103
type: "autogenerated",
72-
dirName: "data/hubble",
104+
dirName: "data/analytics/hubble",
73105
},
74106
],
75107
collapsible: false,
@@ -82,7 +114,7 @@ const sidebars: SidebarsConfig = {
82114
items: [
83115
{
84116
type: "autogenerated",
85-
dirName: "data/galexie",
117+
dirName: "data/indexers/build-your-own/galexie",
86118
},
87119
],
88120
collapsible: false,
@@ -95,20 +127,46 @@ const sidebars: SidebarsConfig = {
95127
items: [
96128
{
97129
type: 'autogenerated',
98-
dirName: 'data/rpc',
130+
dirName: 'data/apis/rpc',
131+
},
132+
],
133+
collapsible: false,
134+
},
135+
],
136+
analytics: [
137+
{
138+
type: 'category',
139+
label: 'Analytics',
140+
items: [
141+
{
142+
type: "autogenerated",
143+
dirName: "data/analytics",
144+
},
145+
],
146+
collapsible: false,
147+
},
148+
],
149+
apis: [
150+
{
151+
type: 'category',
152+
label: 'APIs',
153+
items: [
154+
{
155+
type: "autogenerated",
156+
dirName: "data/apis",
99157
},
100158
],
101159
collapsible: false,
102160
},
103161
],
104-
data_indexers: [
162+
indexers: [
105163
{
106164
type: 'category',
107-
label: 'Data Indexers',
165+
label: 'Indexers',
108166
items: [
109167
{
110168
type: "autogenerated",
111-
dirName: "data/data-indexers",
169+
dirName: "data/indexers",
112170
},
113171
],
114172
collapsible: false,

docs/build/apps/moneygram-access-integration-guide.mdx

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -542,7 +542,7 @@ onMessage: (transaction) => {
542542
https://developers.stellar.org/docs/learn/encyclopedia/errors-and-debugging/error-handling
543543
544544
And status/result codes:
545-
https://developers.stellar.org/docs/data/horizon/api-reference/errors
545+
https://developers.stellar.org/docs/data/apis/horizon/api-reference/errors
546546
*/
547547

548548
// Let's illustrate here how we could handle an 'invalid sequence number' error.
@@ -561,7 +561,7 @@ onMessage: (transaction) => {
561561
detail: 'The transaction failed when submitted to the stellar network.
562562
The `extras.result_codes` field on this response contains further details.
563563
Descriptions of each code can be found at:
564-
https://developers.stellar.org/docs/data/horizon/api-reference/errors/http-status-codes/horizon-specific/transaction-failed',
564+
https://developers.stellar.org/docs/data/apis/horizon/api-reference/errors/http-status-codes/horizon-specific/transaction-failed',
565565
extras: {
566566
envelope_xdr: 'AAAAAgAAAADBjF7n9gfByOwlnyaJH...k4BRagf/////////8AAAAAAAAAAA==',
567567
result_codes: { transaction: 'tx_bad_seq' },
@@ -783,12 +783,12 @@ print(
783783
[stellar lab]: https://lab.stellar.org/
784784
[anchor directory]: https://resources.stellar.org/anchors?
785785
[lobstr]: https://lobstr.co/
786-
[trustline]: ../../data/horizon/api-reference/resources/operations/object/change-trust.mdx
787-
[sell offer]: ../../data/horizon/api-reference/resources/operations/object/sell-offer.mdx
786+
[trustline]: ../../data/apis/horizon/api-reference/resources/operations/object/change-trust.mdx
787+
[sell offer]: ../../data/apis/horizon/api-reference/resources/operations/object/sell-offer.mdx
788788
[postmessage]: https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage
789-
[submitting transactions and handling errors gracefully]: /data/horizon/api-reference/errors/error-handling.mdx
790-
[path payments]: ../../data/horizon/api-reference/resources/operations/object/path-payment-strict-receive.mdx
791-
[claimable balances]: ../../data/horizon/api-reference/resources/operations/object/create-claimable-balance.mdx
789+
[submitting transactions and handling errors gracefully]: ../../data/apis/horizon/api-reference/errors/error-handling.mdx
790+
[path payments]: ../../data/apis/horizon/api-reference/resources/operations/object/path-payment-strict-receive.mdx
791+
[claimable balances]: ../../data/apis/horizon/api-reference/resources/operations/object/create-claimable-balance.mdx
792792
[moneygram screening questionnaire]: https://stellarquestionnaire.typeform.com/to/RD1a71wQ
793793
[gcdnjubqsx7ajwljacmj7i4bc3z47bqutmheiczle6mu4kqbryg5jy6b]: https://stellar.expert/explorer/testnet/asset/SRT-GCDNJUBQSX7AJWLJACMJ7I4BC3Z47BQUTMHEICZLE6MU4KQBRYG5JY6B-1
794794
[gbbd47if6lwk7p7mdevscwr7dpuwv3ny3dtqevfl4nat4aqh3zllfla5]: https://stellar.expert/explorer/testnet/asset/USDC-GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5-1

docs/build/apps/wallet/sep24.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -789,4 +789,4 @@ watcher.controller.stream.listen(
789789
[sep-10]: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md
790790
[sep-24]: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md
791791
[stellar authentication]: ./sep10.mdx
792-
[submitting transactions and handling errors gracefully]: /data/horizon/api-reference/errors/error-handling.mdx
792+
[submitting transactions and handling errors gracefully]: ../../../data/apis/horizon/api-reference/errors/error-handling.mdx

docs/build/guides/basics/classic-transition.mdx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,17 @@ Stellar recently [upgraded its protocol](https://stellar.org/blog/developers/pro
1010

1111
### Transitioning from Horizon to RPC
1212

13-
To properly support Stellar's smart contracts, you must use [Stellar RPC](../../../data/rpc). More specifically, you need RPC to simulate transactions that execute smart contracts, as described in the "Simulating Transactions" section, and it provides a convenient [API](../../../data/rpc/api-reference) for consuming contract events. Both of these features are not available in Horizon.
13+
To properly support Stellar's smart contracts, you must use [Stellar RPC](../../../data/apis/rpc). More specifically, you need RPC to simulate transactions that execute smart contracts, as described in the "Simulating Transactions" section, and it provides a convenient [API](../../../data/apis/rpc/api-reference) for consuming contract events. Both of these features are not available in Horizon.
1414

1515
### Running Your Own RPC vs. Leveraging Third-Party Providers
1616

17-
You can set up an RPC environment by hosting your own node or using a third-party provider. For guidance on hosting your own instance, including a Docker-based setup, refer to the [Admin Guide](../../../data/rpc/admin-guide). Alternatively, a list of trusted providers is available in the [ecosystem RPC providers documentation](../../../data/rpc/rpc-providers).
17+
You can set up an RPC environment by hosting your own node or using a third-party provider. For guidance on hosting your own instance, including a Docker-based setup, refer to the [Admin Guide](../../../data/apis/rpc/admin-guide). Alternatively, a list of trusted providers is available in the [ecosystem RPC providers documentation](../../../data/apis/rpc/rpc-providers).
1818

1919
## 2. Data Ingestion
2020

2121
### Ingesting Smart Contract Events
2222

23-
Horizon offers an effects endpoint that describes state changes executed by classic operations. Similarly, contracts emit [events](../../../learn/encyclopedia/contract-development/events.mdx) that describe changes to their state, which can be fetched via RPC's API. Off-chain solutions can [monitor and ingest these events](../../../build/guides/events/ingest.mdx) (for token transfers or protocol updates) and remain in sync with on-chain data. Each event is defined by the contract and is subject to standards applied to the implementation. Depending on the requirements for retention, a solution might have to handle ingestion directly or use a [third-party service](../../../data/data-indexers/indexer-providers) for a longer-term history.
23+
Horizon offers an effects endpoint that describes state changes executed by classic operations. Similarly, contracts emit [events](../../../learn/encyclopedia/contract-development/events.mdx) that describe changes to their state, which can be fetched via RPC's API. Off-chain solutions can [monitor and ingest these events](../../../build/guides/events/ingest.mdx) (for token transfers or protocol updates) and remain in sync with on-chain data. Each event is defined by the contract and is subject to standards applied to the implementation. Depending on the requirements for retention, a solution might have to handle ingestion directly or use a [third-party service](../../../data/indexers/indexer-providers/indexer-providers.mdx) for a longer-term history.
2424

2525
### Simulating Transaction
2626

@@ -44,4 +44,4 @@ Smart contracts can define their own [custom authorization logic](../../../learn
4444

4545
### Asynchronous Transaction Submission
4646

47-
Unlike Horizon, [RPC only queues transactions for inclusion rather than waiting for final confirmation](../../../data/rpc/api-reference/methods/sendTransaction). Therefore, it is necessary to [poll the transaction’s status](../../../data/rpc/api-reference/methods/getTransaction) to determine if a transaction eventually succeeds or fails. This asynchronous model, as well as other common challenges, can be seen at the [Documentation for Dapp Development - Common Pitfalls](../../../build/guides/dapps/frontend-guide.mdx#7-common-pitfalls).
47+
Unlike Horizon, [RPC only queues transactions for inclusion rather than waiting for final confirmation](../../../data/apis/rpc/api-reference/methods/sendTransaction). Therefore, it is necessary to [poll the transaction’s status](../../../data/apis/rpc/api-reference/methods/getTransaction) to determine if a transaction eventually succeeds or fails. This asynchronous model, as well as other common challenges, can be seen at the [Documentation for Dapp Development - Common Pitfalls](../../../build/guides/dapps/frontend-guide.mdx#7-common-pitfalls).

docs/build/guides/basics/create-account.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,6 @@ Now that you’ve got an account, you can [start sending and receiving payments]
292292

293293
<Alert>
294294

295-
In the above code samples, proper error checking is omitted for brevity. However, you should _always_ validate your results, as there are many ways that requests can fail. You should refer to the guide on [Error Handling](/data/horizon/api-reference/errors/error-handling.mdx) for tips on error management strategies.
295+
In the above code samples, proper error checking is omitted for brevity. However, you should _always_ validate your results, as there are many ways that requests can fail. You should refer to the guide on [Error Handling](../../../data/apis/horizon/api-reference/errors/error-handling.mdx) for tips on error management strategies.
296296

297297
</Alert>

docs/build/guides/basics/follow-received-payments.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ After a few seconds, the Stellar network will perform consensus, close the ledge
112112

113113
## Following payments using `curl`
114114

115-
To follow new payments connected to your account you simply need to send the `Accept: text/event-stream` header to the [/payments](../../../data/horizon/api-reference/resources/operations/README.mdx) endpoint.
115+
To follow new payments connected to your account you simply need to send the `Accept: text/event-stream` header to the [/payments](../../../data/apis/horizon/api-reference/resources/operations/README.mdx) endpoint.
116116

117117
<CodeExample>
118118

@@ -148,7 +148,7 @@ data: {"_links":{"effects":{"href":"/operations/713226564145153/effects/{?cursor
148148

149149
</CodeExample>
150150

151-
Every time you receive a new payment you will get a new row of data. Payments is not the only endpoint that supports streaming. You can also stream transactions [/transactions](../../../data/horizon/api-reference/resources/transactions/README.mdx) and operations [/operations](../../../data/horizon/api-reference/resources/operations/README.mdx).
151+
Every time you receive a new payment you will get a new row of data. Payments is not the only endpoint that supports streaming. You can also stream transactions [/transactions](../../../data/apis/horizon/api-reference/resources/transactions/README.mdx) and operations [/operations](../../../data/apis/horizon/api-reference/resources/operations/README.mdx).
152152

153153
## Following payments using `EventStream`
154154

docs/build/guides/basics/send-and-receive-payments.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,13 @@ Every transaction also incurs a small fee. Like the minimum balance on accounts,
1919

2020
<Alert>
2121

22-
In the following code samples, proper error checking is omitted for brevity. However, you should _always_ validate your results, as there are many ways that requests can fail. You should refer to the guide on [Error Handling](/data/horizon/api-reference/errors/error-handling.mdx) for tips on error management strategies.
22+
In the following code samples, proper error checking is omitted for brevity. However, you should _always_ validate your results, as there are many ways that requests can fail. You should refer to the guide on [Error Handling](../../../data/apis/horizon/api-reference/errors/error-handling.mdx) for tips on error management strategies.
2323

2424
</Alert>
2525

2626
## Send a Payment
2727

28-
Stellar stores and communicates transaction data in a binary format called [XDR](../../../learn/encyclopedia/data-format/xdr.mdx), which is optimized for network performance but unreadable to the human eye. Luckily, [Horizon](../../../data/horizon/README.mdx), the Stellar API, and the [Stellar SDKs](../../../tools/sdks/README.mdx) convert XDRs into friendlier formats. Here’s how you might send 10 lumens to an account:
28+
Stellar stores and communicates transaction data in a binary format called [XDR](../../../learn/encyclopedia/data-format/xdr.mdx), which is optimized for network performance but unreadable to the human eye. Luckily, [Horizon](../../../data/apis/horizon/README.mdx), the Stellar API, and the [Stellar SDKs](../../../tools/sdks/README.mdx) convert XDRs into friendlier formats. Here’s how you might send 10 lumens to an account:
2929

3030
<CodeExample>
3131

docs/build/guides/conventions/extending-wasm-ttl.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Before we demonstrate the TTL extension methods, you should note that in Soroban
2525
## Prerequisites
2626

2727
- Stellar SDK: `npm install @stellar/stellar-sdk` for Javascript
28-
- A [Stellar RPC](../../../data/rpc/README.mdx) endpoint (e.g., `https://soroban-testnet.stellar.org`)
28+
- A [Stellar RPC](../../../data/apis/rpc/README.mdx) endpoint (e.g., `https://soroban-testnet.stellar.org`)
2929
- Basic knowledge of the SDK in use
3030

3131
## Methods for Extending TTL

docs/build/guides/dapps/frontend-guide.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -743,7 +743,7 @@ This is made possible by using the `server.getEvents` method which allows you to
743743

744744
We will be editing the `CounterPage` component to read events from the counter smart contract immediately the page loads to get the initial counter value and update instead of using "Unknown". Before we continue, please take a look at the [contract code](https://github.com/stellar/soroban-examples/blob/main/events/src/lib.rs). In the contract code, an event named `increment` is emitted whenever the `increment` function is called. It is published over 2 topics, `increment` and `COUNTER` and we need to listen to these topics to get the events.
745745

746-
The topics are stored in a data type called `symbol` and we will need to convert both `increment` and `COUNTER` to `symbol` before we can use them in the [`server.getEvents`](https://developers.stellar.org/docs/data/rpc/api-reference/methods/getEvents) method. At maximum, stellar RPCs keep track of events for 7 days and you can query events that happened within the last 7 days, so if you need to store events for longer, you may need to make use of an [indexer](../../../data/data-indexers/README.mdx).
746+
The topics are stored in a data type called `symbol` and we will need to convert both `increment` and `COUNTER` to `symbol` before we can use them in the [`server.getEvents`](../../../data/apis/rpc/api-reference/methods/getEvents) method. At maximum, stellar RPCs keep track of events for 7 days and you can query events that happened within the last 7 days, so if you need to store events for longer, you may need to make use of an [indexer](../../../data/indexers/indexer-providers).
747747

748748
To use events,we edit our counter page and add the following code:
749749

docs/build/guides/dapps/state-archival.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -258,7 +258,7 @@ async function performContractAction(contractId, method, ...args) {
258258

259259
For restoring an entire contract instance, you might need a separate function:
260260

261-
Here we will be using the [`getLedgerEntries` method](/docs/data/rpc/api-reference/methods/getLedgerEntries#requesting-a-contracts-wasm-code) to get the WASM code of the contract and also the [`restoreFootprint` operation](/docs/learn/fundamentals/transactions/list-of-operations#restore-footprint) to restore the contract instance.
261+
Here we will be using the [`getLedgerEntries` method](/docs/data/apis/rpc/api-reference/methods/getLedgerEntries#requesting-a-contracts-wasm-code) to get the WASM code of the contract and also the [`restoreFootprint` operation](/docs/learn/fundamentals/transactions/list-of-operations#restore-footprint) to restore the contract instance.
262262

263263
```javascript
264264
async function restoreContractInstance(contractId) {

0 commit comments

Comments
 (0)