diff --git a/.env b/.env index d8721f4191..e7aa097956 100644 --- a/.env +++ b/.env @@ -1,4 +1,6 @@ -PUBLIC_GITHUB_FORK=https://github.com/XRPLF/xrpl-dev-portal -PUBLIC_GITHUB_BRANCH=master +PUBLIC_DEVPORTAL_FORK=https://github.com/XRPLF/xrpl-dev-portal +PUBLIC_DEVPORTAL_BRANCH=master +PUBLIC_XRPLD_FORK=https://github.com/XRPLF/rippled +PUBLIC_XRPLD_BRANCH=release-3.1 PUBLIC_OWNER_RESERVE=0.2 XRP PUBLIC_BASE_RESERVE=1 XRP diff --git a/@l10n/es-ES/docs/concepts/accounts/cryptographic-keys.md b/@l10n/es-ES/docs/concepts/accounts/cryptographic-keys.md index 1ecd29429e..5575eaff23 100644 --- a/@l10n/es-ES/docs/concepts/accounts/cryptographic-keys.md +++ b/@l10n/es-ES/docs/concepts/accounts/cryptographic-keys.md @@ -155,7 +155,7 @@ Los procesos de derivación de claves descritos aquí están implementados en m - [Definición de semilla](https://github.com/XRPLF/rippled/blob/develop/src/ripple/protocol/Seed.h) - [Derivación de clave general & Ed25519](https://github.com/XRPLF/rippled/blob/develop/src/ripple/protocol/impl/SecretKey.cpp) - [Derivación de clave secp256k1](https://github.com/XRPLF/rippled/blob/develop/src/ripple/protocol/impl/SecretKey.cpp) -- En Python 3 en {% repo-link path="_code-samples/key-derivation/py/key_derivation.py" %}esta sección de códigos de ejemplo del repositorio{% /repo-link %}. +- En Python 3 en {% repo-link repo="devportal" path="_code-samples/key-derivation/py/key_derivation.py" %}esta sección de códigos de ejemplo del repositorio{% /repo-link %}. - En JavaScript en el paquete [`ripple-keypairs`](https://github.com/XRPLF/xrpl.js/tree/main/packages/ripple-keypairs). ### Derivación de clave Ed25519 diff --git a/@l10n/ja/docs/concepts/accounts/cryptographic-keys.md b/@l10n/ja/docs/concepts/accounts/cryptographic-keys.md index 8658b2fa0f..ed6baeea49 100644 --- a/@l10n/ja/docs/concepts/accounts/cryptographic-keys.md +++ b/@l10n/ja/docs/concepts/accounts/cryptographic-keys.md @@ -157,7 +157,7 @@ XRP Ledgerでは、サポートされているさまざまなタイプのキー - [シード定義](https://github.com/XRPLF/rippled/blob/develop/src/ripple/protocol/Seed.h) - [汎用キー & Ed25519鍵導出](https://github.com/XRPLF/rippled/blob/develop/src/ripple/protocol/impl/SecretKey.cpp) - [secp256k1鍵導出](https://github.com/XRPLF/rippled/blob/develop/src/ripple/protocol/impl/SecretKey.cpp) -- Python 3: {% repo-link path="_code-samples/key-derivation/py/key_derivation.py" %}このリポジトリのコードサンプルセクション{% /repo-link %} +- Python 3: {% repo-link repo="devportal" path="_code-samples/key-derivation/py/key_derivation.py" %}このリポジトリのコードサンプルセクション{% /repo-link %} - JavaScript: [`ripple-keypairs`](https://github.com/XRPLF/xrpl.js/tree/main/packages/ripple-keypairs)パッケージ ### Ed25519鍵導出 diff --git a/@l10n/ja/docs/infrastructure/commandline-usage.md b/@l10n/ja/docs/infrastructure/commandline-usage.md index 12bfe7b009..90f3159fd6 100644 --- a/@l10n/ja/docs/infrastructure/commandline-usage.md +++ b/@l10n/ja/docs/infrastructure/commandline-usage.md @@ -84,7 +84,7 @@ rippled -a [OPTIONS] | オプション | 説明 | |:----------------------|:-----------------------------------------------------| | `--ledger {LEDGER}` | `{LEDGER}`(レジャーハッシュまたはレジャーインデックス)により初期レジャーと識別されているレジャーバージョンを読み込みます。指定されたレジャーバージョンは、サーバのレジャーストアーに格納される必要があります。 | -| `--ledgerfile {FILE}` | 指定された`{FILE}`からレジャーバージョンを読み込みます(このファイルには完全なレジャーがJSONフォーマットで格納されている必要があります)。このようなファイルの例については、付属の{% repo-link path="_api-examples/rippled-cli/ledger-file.json" %}`ledger-file.json`{% /repo-link %}をご覧ください。 | +| `--ledgerfile {FILE}` | 指定された`{FILE}`からレジャーバージョンを読み込みます(このファイルには完全なレジャーがJSONフォーマットで格納されている必要があります)。このようなファイルの例については、付属の{% repo-link repo="devportal" path="_api-examples/rippled-cli/ledger-file.json" %}`ledger-file.json`{% /repo-link %}をご覧ください。 | | `--load` | **廃止予定** デバッグのためのオプションです。ディスク上のレジャーストアーから初期レジャーを読み込むだけです。 | | `--replay` | デバッグのためのオプションです。`--ledger`と組み合わせて使用し、レジャーの閉鎖をリプレイします。サーバのレジャーストアーには、当該レジャーとその直前のバージョンのレジャーがすでに格納されている必要があります。サーバでは、前のレジャーをベースとして使用して、指定されたレジャーのすべてのトランザクションが処理されます。その結果、指定されたレジャーが再作成されます。デバッガーを使用して、特定のトランザクションの処理ロジックを分析するためのブレークポイントを追加できます。 | | `--start` | デバッグのためのオプションです。既知のすべてのAmendment(反対票を投じるようにサーバに設定されているAmendmentを除く)が適用されている新しいジェネシスレジャーを使用して開始します。したがってこれらのAmendmentの機能は、2週間の[Amendmentプロセス](../concepts/networks-and-servers/amendments.md)期間ではなく、2番目のレジャーの開始時から使用可能になります。 | diff --git a/@l10n/ja/docs/references/protocol/binary-format.md b/@l10n/ja/docs/references/protocol/binary-format.md index b73b617702..2277b1ed5d 100644 --- a/@l10n/ja/docs/references/protocol/binary-format.md +++ b/@l10n/ja/docs/references/protocol/binary-format.md @@ -57,7 +57,7 @@ curated_anchors: - C++: [`rippled`コードベース](https://github.com/XRPLF/rippled/blob/develop/src/ripple/protocol/impl/STObject.cpp) - JavaScript: [`ripple-binary-codec`](https://github.com/ripple/ripple-binary-codec/)パッケージ -- Python 3: {% repo-link path="_code-samples/tx-serialization/" %}このリポジトリのコードサンプルセクション{% /repo-link %} +- Python 3: {% repo-link repo="devportal" path="_code-samples/tx-serialization/" %}このリポジトリのコードサンプルセクション{% /repo-link %} これらのすべての実装には、一般利用が可能なオープンソースライセンスが提供されているので、学習のためにドキュメントと合わせて使用するだけでなく、必要に応じてコードをインポート、使用、または変更することができます。 diff --git a/@l10n/ja/resources/contribute-documentation/documentation-translations.md b/@l10n/ja/resources/contribute-documentation/documentation-translations.md index 22a97d5a37..056f62a523 100644 --- a/@l10n/ja/resources/contribute-documentation/documentation-translations.md +++ b/@l10n/ja/resources/contribute-documentation/documentation-translations.md @@ -70,7 +70,7 @@ languages: ## 始めるにあたって -XRP Ledger Dev Portalをあなたの母国語に翻訳したい場合は、まず{% repo-link path="docs/concepts/introduction/what-is-the-xrp-ledger.md" %}"What is the XRP Ledger?" file{% /repo-link %}から始めてください。 +XRP Ledger Dev Portalをあなたの母国語に翻訳したい場合は、まず{% repo-link repo="devportal" path="docs/introduction/what-is-the-xrp-ledger.md" %}"What is the XRP Ledger?" file{% /repo-link %}から始めてください。 このファイルを`xrp-ledger-overview.{言語コード}.md`として保存します。ここで`{言語コード}`は[IETF BCP47](https://tools.ietf.org/html/bcp47)の言語コードです。(例えば、スペイン語は"es"、日本語は"ja"、簡体字中国語は"zh-CN"、台湾で使われている繁体字中国語は"zh-TW"などです)。そして、あなたのファイルをこのリポジトリに追加する[プルリクエスト](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests)を作成してください。リポジトリメンテナの誰かが、サイトに言語を追加するために必要なその他の設定を手伝ってくれるでしょう。 diff --git a/@l10n/ja/resources/contribute-documentation/index.md b/@l10n/ja/resources/contribute-documentation/index.md index c608b66f08..219a81bcaa 100644 --- a/@l10n/ja/resources/contribute-documentation/index.md +++ b/@l10n/ja/resources/contribute-documentation/index.md @@ -394,10 +394,10 @@ Alas, if only I had heeded that sage advice, I would not rue the day as I do tod このタグは、通常コードサンプルである、このサイトのソースコードリポジトリの特定のファイルへのリンクを作成します。例えば、
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/1_ledger-index.js" %}`1-ledger-index/index.js`{% /repo-link %}
+{% repo-link repo="devportal" path="_code-samples/get-started" %}Get Started{% /repo-link %}
-次のようになります: {% repo-link path="_code-samples/build-a-desktop-wallet/js/1_ledger-index.js" %}`1-ledger-index/index.js`{% /repo-link %}
+次のようになります: {% repo-link repo="devportal" path="_code-samples/get-started" %}Get Started{% /repo-link %}
サイトのフォークやブランチで作業している場合、サイト設定の変更で一度にすべてのリンクを更新できます。
diff --git a/@theme/markdoc/schema.ts b/@theme/markdoc/schema.ts
index 2955f33d76..aa2a925ecb 100644
--- a/@theme/markdoc/schema.ts
+++ b/@theme/markdoc/schema.ts
@@ -9,6 +9,10 @@ export const childPages: Schema & { tagName: string } = {
export const repoLink: Schema & { tagName: string } = {
tagName: 'repo-link',
attributes: {
+ repo: {
+ type: 'String',
+ required: true,
+ },
path: {
type: 'String',
required: true,
@@ -24,8 +28,10 @@ export const repoLink: Schema & { tagName: string } = {
},
transform(node, config) {
const attributes = node.transformAttributes(config);
- attributes["github_fork"] = attributes["github_fork"] || config.variables.env.PUBLIC_GITHUB_FORK;
- attributes["github_branch"] = attributes["github_branch"] || config.variables.env.PUBLIC_GITHUB_BRANCH;
+ const repo = attributes["repo"].toUpperCase();
+ const env = config.variables.env;
+ attributes["github_fork"] = attributes["github_fork"] || env[`PUBLIC_${repo}_FORK`];
+ attributes["github_branch"] = attributes["github_branch"] || env[`PUBLIC_${repo}_BRANCH`];
const children = node.transformChildren(config);
return new Tag(this.render, attributes, children);
},
diff --git a/docs/concepts/accounts/cryptographic-keys.md b/docs/concepts/accounts/cryptographic-keys.md
index 08c5a8cbfe..9b3d6eb532 100644
--- a/docs/concepts/accounts/cryptographic-keys.md
+++ b/docs/concepts/accounts/cryptographic-keys.md
@@ -157,7 +157,7 @@ The key derivation processes described here are implemented in multiple places a
- [Seed definition](https://github.com/XRPLF/rippled/blob/master/src/libxrpl/protocol/Seed.cpp)
- [General & Ed25519 key derivation](https://github.com/XRPLF/rippled/blob/master/src/libxrpl/protocol/SecretKey.cpp)
- [secp256k1 key derivation](https://github.com/XRPLF/rippled/blob/master/src/libxrpl/protocol/SecretKey.cpp)
-- In Python 3 in {% repo-link path="_code-samples/key-derivation/py/key_derivation.py" %}this repository's code samples section{% /repo-link %}.
+- In Python 3 in {% repo-link repo="devportal" path="_code-samples/key-derivation/py/key_derivation.py" %}this repository's code samples section{% /repo-link %}.
- In JavaScript in the [`ripple-keypairs`](https://github.com/XRPLF/xrpl.js/tree/main/packages/ripple-keypairs) package.
### Ed25519 Key Derivation
diff --git a/docs/concepts/accounts/permission-delegation.md b/docs/concepts/accounts/permission-delegation.md
index 76bdb43a14..2d774f7293 100644
--- a/docs/concepts/accounts/permission-delegation.md
+++ b/docs/concepts/accounts/permission-delegation.md
@@ -68,6 +68,6 @@ Permission delegation is similar to multi-signing in that it allows other key pa
- [DelegateSet transaction][] - Grant, update, or revoke permissions to a specific delegate.
- [Delegate ledger entry][] - Data structure on the ledger that records which permissions have been granted.
- **Code Samples:**
- - {% repo-link path="_code-samples/delegate-permissions/" %}**Delegate Permissions**{% /repo-link %}
+ - {% repo-link repo="devportal" path="_code-samples/delegate-permissions/" %}**Delegate Permissions**{% /repo-link %}
{% raw-partial file="/docs/_snippets/common-links.md" /%}
diff --git a/docs/infrastructure/commandline-usage.md b/docs/infrastructure/commandline-usage.md
index ccf999e6fb..1d16a318a0 100644
--- a/docs/infrastructure/commandline-usage.md
+++ b/docs/infrastructure/commandline-usage.md
@@ -71,7 +71,7 @@ The following options determine which ledger to load first when starting up. The
| Option | Description |
|:----------------------|:-----------------------------------------------------|
| `--ledger {LEDGER}` | Load the ledger version identified by `{LEDGER}` (either a ledger hash or a ledger index) as the initial ledger. The specified ledger version must be in the server's ledger store. |
-| `--ledgerfile {FILE}` | Load the ledger version from the specified `{FILE}`, which must contain a complete ledger in JSON format. For an example of such a file, see the provided {% repo-link path="_api-examples/rippled-cli/ledger-file.json" %}`ledger-file.json`{% /repo-link %}. |
+| `--ledgerfile {FILE}` | Load the ledger version from the specified `{FILE}`, which must contain a complete ledger in JSON format. For an example of such a file, see the provided {% repo-link repo="devportal" path="_api-examples/rippled-cli/ledger-file.json" %}`ledger-file.json`{% /repo-link %}. |
| `--load` | Use only the ledger store on disk when loading the initial ledger. |
| `--net` | Use only data from the network when loading the initial ledger. |
| `--replay` | Use with `--ledger` to replay a specific ledger. Your server must have the ledger in question and its direct ancestor already in the ledger store. Using the previous ledger as a base, the server processes all the transactions in the specified ledger, resulting in a re-creation of the specified ledger. With a debugger, you can add breakpoints to analyze specific transaction processing logic. |
diff --git a/docs/references/protocol/binary-format.md b/docs/references/protocol/binary-format.md
index df5290538f..4ffafe2a6b 100644
--- a/docs/references/protocol/binary-format.md
+++ b/docs/references/protocol/binary-format.md
@@ -47,8 +47,8 @@ Both signed and unsigned transactions can be represented in both JSON and binary
The serialization processes described here are implemented in multiple places and programming languages:
- In C++ [in the `rippled` code base](https://github.com/XRPLF/rippled/blob/master/src/libxrpl/protocol/STObject.cpp).
-- In JavaScript in {% repo-link path="_code-samples/tx-serialization/" %}this repository's code samples section{% /repo-link %}.
-- In Python 3 in {% repo-link path="_code-samples/tx-serialization/" %}this repository's code samples section{% /repo-link %}.
+- In JavaScript in {% repo-link repo="devportal" path="_code-samples/tx-serialization/" %}this repository's code samples section{% /repo-link %}.
+- In Python 3 in {% repo-link repo="devportal" path="_code-samples/tx-serialization/" %}this repository's code samples section{% /repo-link %}.
Additionally, many [client libraries](../client-libraries.md) provide serialization support under permissive open-source licenses, so you can import, use, or adapt the code for your needs.
@@ -318,7 +318,7 @@ Blob fields have no further structure to their contents, so they consist of exac
Some fields specify a currency code, which could be a fungible token, the ticker symbol for an off-ledger asset, or some other identifier for a currency. This field type is currently used only in [Price Oracles](../../concepts/decentralized-storage/price-oracles.md).
-These fields consist of 160 bits of binary data. If the data matches the ["standard" currency code format](#currency-codes), it may be represented as a three-letter currency code string in JSON. Otherwise, it is represented as hexadecimal. Client libraries _may_ attempt to interpret this as a string of ASCII or UTF-8, but it is not guaranteed to be valid. The {% repo-link path="_code-samples/normalize-currency-codes/" %}Normalize Currency Codes code sample{% /repo-link %} demonstrates best practices for converting most common formats for this data into a string for humans to read.
+These fields consist of 160 bits of binary data. If the data matches the ["standard" currency code format](#currency-codes), it may be represented as a three-letter currency code string in JSON. Otherwise, it is represented as hexadecimal. Client libraries _may_ attempt to interpret this as a string of ASCII or UTF-8, but it is not guaranteed to be valid. The {% repo-link repo="devportal" path="_code-samples/normalize-currency-codes/" %}Normalize Currency Codes code sample{% /repo-link %} demonstrates best practices for converting most common formats for this data into a string for humans to read.
### Issue Fields
diff --git a/docs/references/protocol/transactions/types/mptokenissuancecreate.md b/docs/references/protocol/transactions/types/mptokenissuancecreate.md
index 70e062663c..ed0540706f 100644
--- a/docs/references/protocol/transactions/types/mptokenissuancecreate.md
+++ b/docs/references/protocol/transactions/types/mptokenissuancecreate.md
@@ -49,7 +49,7 @@ This example assumes that the issuer of the token is the signer of the transacti
| `MPTokenMetadata` | String - Hexadecimal | Blob | No | Arbitrary metadata about this issuance. The limit for this field is 1024 bytes. By convention, the metadata should decode to JSON data describing what the MPT represents. The [XLS-89 specification](https://github.com/XRPLF/XRPL-Standards/tree/master/XLS-0089-multi-purpose-token-metadata-schema) defines a recommended format for metadata. |
{% admonition type="success" name="Tip" %}
-For an example of how to encode metadata for the `MPTokenMetadata` field, see {% repo-link path="_code-samples/issue-mpt-with-metadata/" %}Code Sample: Issue MPT with Metadata{% /repo-link %}.
+For an example of how to encode metadata for the `MPTokenMetadata` field, see {% repo-link repo="devportal" path="_code-samples/issue-mpt-with-metadata/" %}Code Sample: Issue MPT with Metadata{% /repo-link %}.
{% /admonition %}
diff --git a/docs/tutorials/best-practices/api-usage/index.md b/docs/tutorials/best-practices/api-usage/index.md
index 67026236b7..0cd696ad5c 100644
--- a/docs/tutorials/best-practices/api-usage/index.md
+++ b/docs/tutorials/best-practices/api-usage/index.md
@@ -14,7 +14,7 @@ The following code samples cover essential techniques for working with API respo
* [Markers and Pagination](../../../references/http-websocket-apis/api-conventions/markers-and-pagination): Handle large datasets that span multiple responses by properly using markers to iterate through results without missing data or overloading your application.
-* {% repo-link path="_code-samples/normalize-currency-codes/README.md" %}Data Normalization{% /repo-link %}: Convert XRP Ledger data formats into human-readable formats, such as transforming currency codes from hexadecimal to standard representations.
+* {% repo-link repo="devportal" path="_code-samples/normalize-currency-codes/README.md" %}Data Normalization{% /repo-link %}: Convert XRP Ledger data formats into human-readable formats, such as transforming currency codes from hexadecimal to standard representations.
* [Rate Limiting](../../../references/http-websocket-apis/api-conventions/rate-limiting.md): Understand and work within API rate limits to maintain consistent access and avoid service interruptions.
diff --git a/docs/tutorials/best-practices/key-management/assign-a-regular-key-pair.md b/docs/tutorials/best-practices/key-management/assign-a-regular-key-pair.md
index af099364ce..564914af6c 100644
--- a/docs/tutorials/best-practices/key-management/assign-a-regular-key-pair.md
+++ b/docs/tutorials/best-practices/key-management/assign-a-regular-key-pair.md
@@ -29,7 +29,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/assign-regular-key/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/assign-regular-key/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/best-practices/key-management/disable-master-key-pair.md b/docs/tutorials/best-practices/key-management/disable-master-key-pair.md
index a0f918f1a1..ab01881d2f 100644
--- a/docs/tutorials/best-practices/key-management/disable-master-key-pair.md
+++ b/docs/tutorials/best-practices/key-management/disable-master-key-pair.md
@@ -29,7 +29,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/disable-master-key/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/disable-master-key/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/best-practices/key-management/remove-a-regular-key-pair.md b/docs/tutorials/best-practices/key-management/remove-a-regular-key-pair.md
index 3c77766257..c867db688d 100644
--- a/docs/tutorials/best-practices/key-management/remove-a-regular-key-pair.md
+++ b/docs/tutorials/best-practices/key-management/remove-a-regular-key-pair.md
@@ -30,7 +30,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/remove-regular-key/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/remove-regular-key/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/best-practices/key-management/send-a-multi-signed-transaction.md b/docs/tutorials/best-practices/key-management/send-a-multi-signed-transaction.md
index f3e01f49a8..dc20b8714e 100644
--- a/docs/tutorials/best-practices/key-management/send-a-multi-signed-transaction.md
+++ b/docs/tutorials/best-practices/key-management/send-a-multi-signed-transaction.md
@@ -22,7 +22,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/multisigning/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/multisigning/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/best-practices/key-management/set-up-multi-signing.md b/docs/tutorials/best-practices/key-management/set-up-multi-signing.md
index 17bfa1e545..1170e45148 100644
--- a/docs/tutorials/best-practices/key-management/set-up-multi-signing.md
+++ b/docs/tutorials/best-practices/key-management/set-up-multi-signing.md
@@ -27,7 +27,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/multisigning/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/multisigning/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/compliance-features/manage-credentials.md b/docs/tutorials/compliance-features/manage-credentials.md
index 8042084196..7ab620c4a8 100644
--- a/docs/tutorials/compliance-features/manage-credentials.md
+++ b/docs/tutorials/compliance-features/manage-credentials.md
@@ -31,7 +31,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/credential/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/credential/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/compliance-features/verify-credentials.md b/docs/tutorials/compliance-features/verify-credentials.md
index 17b48a0500..a193976c82 100644
--- a/docs/tutorials/compliance-features/verify-credentials.md
+++ b/docs/tutorials/compliance-features/verify-credentials.md
@@ -30,7 +30,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/verify-credential/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/verify-credential/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/defi/dex/use-amm-auction-slot-for-lower-fees.md b/docs/tutorials/defi/dex/use-amm-auction-slot-for-lower-fees.md
index de926ea0e6..71bf91c485 100644
--- a/docs/tutorials/defi/dex/use-amm-auction-slot-for-lower-fees.md
+++ b/docs/tutorials/defi/dex/use-amm-auction-slot-for-lower-fees.md
@@ -33,7 +33,7 @@ To complete this tutorial, you should:
## Source Code
-See {% repo-link path="_code-samples/auction-slot/" %}Code Samples: Auction Slot{% /repo-link %} for the full source code for this tutorial.
+See {% repo-link repo="devportal" path="_code-samples/auction-slot/" %}Code Samples: Auction Slot{% /repo-link %} for the full source code for this tutorial.
## Steps
@@ -225,7 +225,7 @@ The above sample code shows how to use various AMM-related formulas in a particu
{% tabs %}
{% tab label="JavaScript" %}
-The file {% repo-link path="_code-samples/auction-slot/js/amm-formulas.js" %}`amm-formulas.js`{% /repo-link %} contains the source code for all these formulas.
+The file {% repo-link repo="devportal" path="_code-samples/auction-slot/js/amm-formulas.js" %}`amm-formulas.js`{% /repo-link %} contains the source code for all these formulas.
{% /tab %}
{% /tabs %}
diff --git a/docs/tutorials/defi/lending/use-single-asset-vaults/create-a-single-asset-vault.md b/docs/tutorials/defi/lending/use-single-asset-vaults/create-a-single-asset-vault.md
index 59aa8d2732..886ec74e9a 100644
--- a/docs/tutorials/defi/lending/use-single-asset-vaults/create-a-single-asset-vault.md
+++ b/docs/tutorials/defi/lending/use-single-asset-vaults/create-a-single-asset-vault.md
@@ -40,7 +40,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/vaults/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/vaults/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/defi/lending/use-single-asset-vaults/deposit-into-a-vault.md b/docs/tutorials/defi/lending/use-single-asset-vaults/deposit-into-a-vault.md
index 08cb0ec8d7..abb68e955b 100644
--- a/docs/tutorials/defi/lending/use-single-asset-vaults/deposit-into-a-vault.md
+++ b/docs/tutorials/defi/lending/use-single-asset-vaults/deposit-into-a-vault.md
@@ -39,7 +39,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/vaults/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/vaults/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/defi/lending/use-single-asset-vaults/withdraw-from-a-vault.md b/docs/tutorials/defi/lending/use-single-asset-vaults/withdraw-from-a-vault.md
index 612da25428..8bd8814571 100644
--- a/docs/tutorials/defi/lending/use-single-asset-vaults/withdraw-from-a-vault.md
+++ b/docs/tutorials/defi/lending/use-single-asset-vaults/withdraw-from-a-vault.md
@@ -34,7 +34,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/vaults/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/vaults/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/defi/lending/use-the-lending-protocol/claw-back-cover.md b/docs/tutorials/defi/lending/use-the-lending-protocol/claw-back-cover.md
index fc8edb4c0b..d5d406c8ce 100644
--- a/docs/tutorials/defi/lending/use-the-lending-protocol/claw-back-cover.md
+++ b/docs/tutorials/defi/lending/use-the-lending-protocol/claw-back-cover.md
@@ -35,7 +35,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/lending-protocol/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/lending-protocol/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/defi/lending/use-the-lending-protocol/create-a-loan-broker.md b/docs/tutorials/defi/lending/use-the-lending-protocol/create-a-loan-broker.md
index 87e22909e5..7c29fd3c1b 100644
--- a/docs/tutorials/defi/lending/use-the-lending-protocol/create-a-loan-broker.md
+++ b/docs/tutorials/defi/lending/use-the-lending-protocol/create-a-loan-broker.md
@@ -34,7 +34,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/lending-protocol/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/lending-protocol/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/defi/lending/use-the-lending-protocol/create-a-loan.md b/docs/tutorials/defi/lending/use-the-lending-protocol/create-a-loan.md
index 7d7155fc60..4380551ade 100644
--- a/docs/tutorials/defi/lending/use-the-lending-protocol/create-a-loan.md
+++ b/docs/tutorials/defi/lending/use-the-lending-protocol/create-a-loan.md
@@ -37,7 +37,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/lending-protocol/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/lending-protocol/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/defi/lending/use-the-lending-protocol/deposit-and-withdraw-cover.md b/docs/tutorials/defi/lending/use-the-lending-protocol/deposit-and-withdraw-cover.md
index 40388fc6b7..06d615d281 100644
--- a/docs/tutorials/defi/lending/use-the-lending-protocol/deposit-and-withdraw-cover.md
+++ b/docs/tutorials/defi/lending/use-the-lending-protocol/deposit-and-withdraw-cover.md
@@ -36,7 +36,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/lending-protocol/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/lending-protocol/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/defi/lending/use-the-lending-protocol/manage-a-loan.md b/docs/tutorials/defi/lending/use-the-lending-protocol/manage-a-loan.md
index c912db09b3..f4ab58cb09 100644
--- a/docs/tutorials/defi/lending/use-the-lending-protocol/manage-a-loan.md
+++ b/docs/tutorials/defi/lending/use-the-lending-protocol/manage-a-loan.md
@@ -37,7 +37,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/lending-protocol/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/lending-protocol/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/defi/lending/use-the-lending-protocol/pay-off-a-loan.md b/docs/tutorials/defi/lending/use-the-lending-protocol/pay-off-a-loan.md
index 390c8bf388..60bd5f5b72 100644
--- a/docs/tutorials/defi/lending/use-the-lending-protocol/pay-off-a-loan.md
+++ b/docs/tutorials/defi/lending/use-the-lending-protocol/pay-off-a-loan.md
@@ -37,7 +37,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/lending-protocol/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/lending-protocol/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/get-started/get-started-php.md b/docs/tutorials/get-started/get-started-php.md
index d5f7f0ad6a..b52887d3f1 100644
--- a/docs/tutorials/get-started/get-started-php.md
+++ b/docs/tutorials/get-started/get-started-php.md
@@ -158,7 +158,7 @@ Now, we have a simple application that:
2. Connects to the XRP Ledger.
3. Looks up and prints information about the account you created.
-To run the app, you can copy the code from {% repo-link path="_code-samples/get-started/php/" %}this website's GitHub Repository{% /repo-link %} and run it from the command line:
+To run the app, you can copy the code from {% repo-link repo="devportal" path="_code-samples/get-started/php/" %}this website's GitHub Repository{% /repo-link %} and run it from the command line:
```console
composer require hardcastle/xrpl_php
diff --git a/docs/tutorials/payments/cancel-a-check.md b/docs/tutorials/payments/cancel-a-check.md
index 133f72c339..f50e25789f 100644
--- a/docs/tutorials/payments/cancel-a-check.md
+++ b/docs/tutorials/payments/cancel-a-check.md
@@ -19,7 +19,7 @@ You may want to cancel an incoming Check if you do not want it. You might cancel
The complete source code for this tutorial is available in the source repository for this website:
-{% repo-link path="_code-samples/checks/js/" %}Checks sample code{% /repo-link %}
+{% repo-link repo="devportal" path="_code-samples/checks/js/" %}Checks sample code{% /repo-link %}
## Steps
diff --git a/docs/tutorials/payments/cancel-an-expired-escrow.md b/docs/tutorials/payments/cancel-an-expired-escrow.md
index ec21fe1a5c..5184137eda 100644
--- a/docs/tutorials/payments/cancel-an-expired-escrow.md
+++ b/docs/tutorials/payments/cancel-an-expired-escrow.md
@@ -25,7 +25,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/escrow/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/escrow/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/payments/cash-a-check-for-a-flexible-amount.md b/docs/tutorials/payments/cash-a-check-for-a-flexible-amount.md
index 9ea1f5d38a..627ce942f3 100644
--- a/docs/tutorials/payments/cash-a-check-for-a-flexible-amount.md
+++ b/docs/tutorials/payments/cash-a-check-for-a-flexible-amount.md
@@ -21,7 +21,7 @@ You can also [cash a check for an exact amount](cash-a-check-for-an-exact-amount
The complete source code for this tutorial is available in the source repository for this website:
-{% repo-link path="_code-samples/checks/js/" %}Checks sample code{% /repo-link %}
+{% repo-link repo="devportal" path="_code-samples/checks/js/" %}Checks sample code{% /repo-link %}
## Steps
diff --git a/docs/tutorials/payments/cash-a-check-for-an-exact-amount.md b/docs/tutorials/payments/cash-a-check-for-an-exact-amount.md
index 55f0e98b1f..33a255f676 100644
--- a/docs/tutorials/payments/cash-a-check-for-an-exact-amount.md
+++ b/docs/tutorials/payments/cash-a-check-for-an-exact-amount.md
@@ -19,7 +19,7 @@ You can also [cash a check for a flexible amount](./cash-a-check-for-a-flexible-
The complete source code for this tutorial is available in the source repository for this website:
-{% repo-link path="_code-samples/checks/js/" %}Checks sample code{% /repo-link %}
+{% repo-link repo="devportal" path="_code-samples/checks/js/" %}Checks sample code{% /repo-link %}
## Steps
diff --git a/docs/tutorials/payments/look-up-checks.md b/docs/tutorials/payments/look-up-checks.md
index 06bfd8dace..a3e5015d64 100644
--- a/docs/tutorials/payments/look-up-checks.md
+++ b/docs/tutorials/payments/look-up-checks.md
@@ -17,7 +17,7 @@ This tutorial shows how to look up [Checks](../../concepts/payment-types/checks.
The complete source code for this tutorial is available in the source repository for this website:
-{% repo-link path="_code-samples/checks/js/" %}Checks sample code{% /repo-link %}
+{% repo-link repo="devportal" path="_code-samples/checks/js/" %}Checks sample code{% /repo-link %}
## Steps
diff --git a/docs/tutorials/payments/send-a-check.md b/docs/tutorials/payments/send-a-check.md
index 7c667e515c..e577ae7f98 100644
--- a/docs/tutorials/payments/send-a-check.md
+++ b/docs/tutorials/payments/send-a-check.md
@@ -23,7 +23,7 @@ To send a Check with this tutorial, you need the following:
The complete source code for this tutorial is available in the source repository for this website:
-{% repo-link path="_code-samples/checks/js/" %}Checks sample code{% /repo-link %}
+{% repo-link repo="devportal" path="_code-samples/checks/js/" %}Checks sample code{% /repo-link %}
## Steps
diff --git a/docs/tutorials/payments/send-a-conditional-escrow.md b/docs/tutorials/payments/send-a-conditional-escrow.md
index 667ca18243..d96001f9d2 100644
--- a/docs/tutorials/payments/send-a-conditional-escrow.md
+++ b/docs/tutorials/payments/send-a-conditional-escrow.md
@@ -27,7 +27,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/escrow/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/escrow/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/payments/send-a-timed-escrow.md b/docs/tutorials/payments/send-a-timed-escrow.md
index f7f4e07977..55500e7838 100644
--- a/docs/tutorials/payments/send-a-timed-escrow.md
+++ b/docs/tutorials/payments/send-a-timed-escrow.md
@@ -26,7 +26,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/escrow/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/escrow/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/payments/send-fungible-token-escrows.md b/docs/tutorials/payments/send-fungible-token-escrows.md
index c46704c084..f6bec8f85c 100644
--- a/docs/tutorials/payments/send-fungible-token-escrows.md
+++ b/docs/tutorials/payments/send-fungible-token-escrows.md
@@ -44,7 +44,7 @@ To complete this tutorial, you should:
## Source Code
-You can find the complete source code for this tutorial's examples in the {% repo-link path="_code-samples/escrow/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/escrow/" %}code samples section of this website's repository{% /repo-link %}.
## Steps
diff --git a/docs/tutorials/sample-apps/build-a-browser-wallet-in-javascript.md b/docs/tutorials/sample-apps/build-a-browser-wallet-in-javascript.md
index e37350552b..6f9387a7b0 100644
--- a/docs/tutorials/sample-apps/build-a-browser-wallet-in-javascript.md
+++ b/docs/tutorials/sample-apps/build-a-browser-wallet-in-javascript.md
@@ -22,7 +22,7 @@ To complete this tutorial, you should meet the following guidelines:
## Source Code
-You can find the complete source code for all of this tutorial's examples in the {% repo-link path="_code-samples/build-a-browser-wallet/js/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for all of this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/build-a-browser-wallet/js/" %}code samples section of this website's repository{% /repo-link %}.
## Goals
@@ -102,9 +102,9 @@ In this step, we create a home page that displays account and ledger details.
2. Make a new folder named `src` in the root directory of the project.
-3. Copy the contents of {% repo-link path="_code-samples/build-a-browser-wallet/js/index.html" %}index.html{% /repo-link %} in your code.
+3. Copy the contents of {% repo-link repo="devportal" path="_code-samples/build-a-browser-wallet/js/index.html" %}index.html{% /repo-link %} in your code.
-4. Add styling to your {% repo-link path="_code-samples/build-a-browser-wallet/js/index.css" %}index.css{% /repo-link %} file by following the link.
+4. Add styling to your {% repo-link repo="devportal" path="_code-samples/build-a-browser-wallet/js/index.css" %}index.css{% /repo-link %} file by following the link.
This basic setup creates a homepage and applies some visual styles. The goal is for the homepage to:
@@ -122,9 +122,9 @@ To make that happen, we need to connect to the XRP Ledger and look up the accoun
{% code-snippet file="/_code-samples/build-a-browser-wallet/js/index.js" language="js" /%}
-7. In the `helpers` folder, add {% repo-link path="_code-samples/build-a-browser-wallet/js/src/helpers/render-xrpl-logo.js" %}render-xrpl-logo.js{% /repo-link %} to handle displaying a logo.
+7. In the `helpers` folder, add {% repo-link repo="devportal" path="_code-samples/build-a-browser-wallet/js/src/helpers/render-xrpl-logo.js" %}render-xrpl-logo.js{% /repo-link %} to handle displaying a logo.
-8. Finally create a new folder named `assets` in the `src/` directory and add the file {% repo-link path="_code-samples/build-a-browser-wallet/js/src/assets/xrpl.svg" %}`xrpl.svg`{% /repo-link %} there.
+8. Finally create a new folder named `assets` in the `src/` directory and add the file {% repo-link repo="devportal" path="_code-samples/build-a-browser-wallet/js/src/assets/xrpl.svg" %}`xrpl.svg`{% /repo-link %} there.
These files are used to render the XRPL logo for aesthetic purposes.
@@ -148,7 +148,7 @@ Now that we've created the home page, we can move on to the "Send XRP" page. Thi
2. Inside the `send-xrp` folder, create two files named `send-xrp.js` and `send-xrp.html`.
-3. Copy the contents of the {% repo-link path="_code-samples/build-a-browser-wallet/js/src/send-xrp/send-xrp.html" %}send-xrp.html{% /repo-link %} file to your `send-xrp.html` file. The provided HTML code includes three input fields for the destination address, amount, and destination tag, each with their corresponding labels.
+3. Copy the contents of the {% repo-link repo="devportal" path="_code-samples/build-a-browser-wallet/js/src/send-xrp/send-xrp.html" %}send-xrp.html{% /repo-link %} file to your `send-xrp.html` file. The provided HTML code includes three input fields for the destination address, amount, and destination tag, each with their corresponding labels.
4. Now that we have the HTML code, let's add the JavaScript code. In the `helpers` folder, create a new file named `submit-transaction.js` and copy the code written below to the file. In this file, we are using the [submit](../../references/http-websocket-apis/public-api-methods/transaction-methods/submit.md) method to submit the transaction to the XRPL. Before submitting every transaction needs to be signed by a wallet, learn more about [signing](../../references/http-websocket-apis/admin-api-methods/signing-methods/sign.md) a transaction.
@@ -190,7 +190,7 @@ Now that we have created the home page and the send XRP page, let's create the t
This code uses [account_tx](../../references/http-websocket-apis/public-api-methods/account-methods/account_tx.md) to fetch transactions we've sent to and from this account. In order to get all the results, we're using the `marker` parameter to paginate through the incomplete list of transactions until we reach the end.
-3. Create a file named `transaction-history.html` and copy the code from {% repo-link path="_code-samples/build-a-browser-wallet/js/src/transaction-history/transaction-history.html" %}transaction-history.html{% /repo-link %} into it.
+3. Create a file named `transaction-history.html` and copy the code from {% repo-link repo="devportal" path="_code-samples/build-a-browser-wallet/js/src/transaction-history/transaction-history.html" %}transaction-history.html{% /repo-link %} into it.
`transaction-history.html` defines a table which displays the fields mentioned above.
diff --git a/docs/tutorials/sample-apps/build-a-desktop-wallet-in-javascript.md b/docs/tutorials/sample-apps/build-a-desktop-wallet-in-javascript.md
index bc17c0783f..1df89e6cbd 100644
--- a/docs/tutorials/sample-apps/build-a-desktop-wallet-in-javascript.md
+++ b/docs/tutorials/sample-apps/build-a-desktop-wallet-in-javascript.md
@@ -16,7 +16,7 @@ To complete this tutorial, you should meet the following requirements:
### Source Code
-You can find the complete source code for all of this tutorial's examples in the {% repo-link path="_code-samples/build-a-desktop-wallet/js/" %}code samples section of this website's repository{% /repo-link %}. After a `npm install` in this directory you can run the application for each step as described in the `scripts` section of `package.json`, e.g, `npm run ledger-index`.
+You can find the complete source code for all of this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/" %}code samples section of this website's repository{% /repo-link %}. After a `npm install` in this directory you can run the application for each step as described in the `scripts` section of `package.json`, e.g, `npm run ledger-index`.
{% admonition type="warning" name="Caution" %}Be careful if you copy-and-paste the source code from these directly from these files. The sample code is split up into different files per step, so some shared imports and files are in different directories in the examples. This especially applies to the `library`, `bootstrap`, and `WALLET_DIR` contents.{% /admonition %}
@@ -89,19 +89,19 @@ To run the reference application for this step, run:
npm run hello
```
-In the next steps we will continually expand on this very basic setup. To better keep track of all the changes that will be made, the files in the {% repo-link path="_code-samples/build-a-desktop-wallet/js/" %}reference section{% /repo-link %} are numbered/prefixed with the respective step number:
+In the next steps we will continually expand on this very basic setup. To better keep track of all the changes that will be made, the files in the {% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/" %}reference section{% /repo-link %} are numbered/prefixed with the respective step number:
**Full code for this step:**
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/0-hello/index.js" %}`0-hello/index.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/0-hello/view/template.html" %}`0-hello/view/template.html`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/0-hello/index.js" %}`0-hello/index.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/0-hello/view/template.html" %}`0-hello/view/template.html`{% /repo-link %},
### 1. Ledger Index
**Full code for this step:**
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/1-ledger-index/index.js" %}`1-ledger-index/index.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/1-ledger-index/view/preload.js" %}`1-ledger-index/view/preload.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/1-ledger-index/view/template.html" %}`1-ledger-index/view/template.html`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/1-ledger-index/view/renderer.js" %}`1-ledger-index/view/renderer.js`{% /repo-link %}.
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/1-ledger-index/index.js" %}`1-ledger-index/index.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/1-ledger-index/view/preload.js" %}`1-ledger-index/view/preload.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/1-ledger-index/view/template.html" %}`1-ledger-index/view/template.html`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/1-ledger-index/view/renderer.js" %}`1-ledger-index/view/renderer.js`{% /repo-link %}.
Our first step was to have a running "Hello World" application. Now we want to expand on that so that the application can interact on a very basic level with the XRP Ledger and display some information about the current ledger state on the screen. After completing this step, the application should look like this:
@@ -227,10 +227,10 @@ npm run ledger-index
### 2. Show Ledger Updates by using WebSocket subscriptions
**Full code for this step:**
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/2-async/index.js" %}`2-async/index.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/2-async/view/preload.js" %}`2-async/view/preload.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/2-async/view/renderer.js" %}`2-async/view/renderer.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/2-async/view/template.html" %}`2-async/view/template.html`{% /repo-link %}.
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/2-async/index.js" %}`2-async/index.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/2-async/view/preload.js" %}`2-async/view/preload.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/2-async/view/renderer.js" %}`2-async/view/renderer.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/2-async/view/template.html" %}`2-async/view/template.html`{% /repo-link %}.
Our application so far only shows the latest validated ledger sequence at the time when we opened it. Let's take things up a notch and add some dashboard like functionality where our wallet app will keep in sync with the ledger and display the latest specs and stats like a clock that is keeping track of time. The result will look something like this:
@@ -305,11 +305,11 @@ npm run async
### 3. Display an Account
**Full code for this step:**
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/3_helpers.js" %}`library/3_helpers.js`{% /repo-link %}.
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/3-account/index.js" %}`3-account/index.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/3-account/view/preload.js" %}`3-account/view/preload.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/3-account/view/renderer.js" %}`3-account/view/renderer.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/3-account/view/template.html" %}`3-account/view/template.html`{% /repo-link %}.
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/3_helpers.js" %}`library/3_helpers.js`{% /repo-link %}.
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/3-account/index.js" %}`3-account/index.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/3-account/view/preload.js" %}`3-account/view/preload.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/3-account/view/renderer.js" %}`3-account/view/renderer.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/3-account/view/template.html" %}`3-account/view/template.html`{% /repo-link %}.
We now have a permanent connection to the XRPL and some code to bring the delivered data to life on our screen, it's time to add some "wallet" functionality by managing an individual account.
@@ -513,12 +513,12 @@ npm run account
### 4. Show Account's Transactions
**Full code for this step:**
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/3_helpers.js" %}`library/3_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/4_helpers.js" %}`library/4_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/4-tx-history/index.js" %}`4-tx-history/index.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/4-tx-history/view/preload.js" %}`4-tx-history/view/preload.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/4-tx-history/view/renderer.js" %}`4-tx-history/view/renderer.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/4-tx-history/view/template.html" %}`4-tx-history/view/template.html`{% /repo-link %}.
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/3_helpers.js" %}`library/3_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/4_helpers.js" %}`library/4_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/4-tx-history/index.js" %}`4-tx-history/index.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/4-tx-history/view/preload.js" %}`4-tx-history/view/preload.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/4-tx-history/view/renderer.js" %}`4-tx-history/view/renderer.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/4-tx-history/view/template.html" %}`4-tx-history/view/template.html`{% /repo-link %}.
At this point, our wallet shows the account's balance getting updated, but doesn't give us any clue about how this state came about, namely the actual transactions that caused the updates. So, our next step is to display the account's up to date transaction history using subscriptions once again:
@@ -679,13 +679,13 @@ npm run tx-history
### 5. Saving the Private Keys with a Password
**Full code for this step:**
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/3_helpers.js" %}`library/3_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/4_helpers.js" %}`library/4_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/5_helpers.js" %}`library/5_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/5-password/index.js" %}`5-password/index.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/5-password/view/preload.js" %}`5-password/view/preload.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/5-password/view/template.html" %}`5-password/view/template.html`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/5-password/view/renderer.js" %}`5-password/view/renderer.js`{% /repo-link %}.
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/3_helpers.js" %}`library/3_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/4_helpers.js" %}`library/4_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/5_helpers.js" %}`library/5_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/5-password/index.js" %}`5-password/index.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/5-password/view/preload.js" %}`5-password/view/preload.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/5-password/view/template.html" %}`5-password/view/template.html`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/5-password/view/renderer.js" %}`5-password/view/renderer.js`{% /repo-link %}.
After finishing this step the application should look like this:
@@ -874,27 +874,27 @@ npm run password
### 6. Styling
**Full code for this step:**
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/3_helpers.js" %}`library/3_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/4_helpers.js" %}`library/4_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/5_helpers.js" %}`library/5_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/6-styling/index.js" %}`6-styling/index.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/6-styling/view/preload.js" %}`6-styling/view/preload.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/6-styling/view/template.html" %}`6-styling/view/template.html`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/6-styling/view/renderer.js" %}`6-styling/view/renderer.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/bootstrap/bootstrap.bundle.min.js" %}`bootstrap/bootstrap.bundle.min.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/bootstrap/bootstrap.min.css" %}`bootstrap/bootstrap.min.css`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/bootstrap/custom.css" %}`bootstrap/custom.css`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/bootstrap/XRPLedger_DevPortal-white.svg" %}`bootstrap/XRPLedger_DevPortal-white.svg`{% /repo-link %}.
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/3_helpers.js" %}`library/3_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/4_helpers.js" %}`library/4_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/5_helpers.js" %}`library/5_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/6-styling/index.js" %}`6-styling/index.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/6-styling/view/preload.js" %}`6-styling/view/preload.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/6-styling/view/template.html" %}`6-styling/view/template.html`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/6-styling/view/renderer.js" %}`6-styling/view/renderer.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/bootstrap/bootstrap.bundle.min.js" %}`bootstrap/bootstrap.bundle.min.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/bootstrap/bootstrap.min.css" %}`bootstrap/bootstrap.min.css`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/bootstrap/custom.css" %}`bootstrap/custom.css`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/bootstrap/XRPLedger_DevPortal-white.svg" %}`bootstrap/XRPLedger_DevPortal-white.svg`{% /repo-link %}.
After finishing this step the application should look like this:

1. In the project root, create a new folder `bootstrap` and add the following files into that directory:
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/bootstrap/bootstrap.bundle.min.js" %}`bootstrap.bundle.min.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/bootstrap/bootstrap.bundle.min.css" %}`bootstrap.min.css`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/bootstrap/custom.css" %}`custom.css`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/bootstrap/XRPLedger_DevPortal-white.svg" %}`XRPLedger_DevPortal-white.svg`{% /repo-link %}
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/bootstrap/bootstrap.bundle.min.js" %}`bootstrap.bundle.min.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/bootstrap/bootstrap.bundle.min.css" %}`bootstrap.min.css`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/bootstrap/custom.css" %}`custom.css`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/bootstrap/XRPLedger_DevPortal-white.svg" %}`XRPLedger_DevPortal-white.svg`{% /repo-link %}
2. Change the content of `view/template.html` to be the following code:
@@ -1037,14 +1037,14 @@ npm run styling
### 7. Send XRP
**Full code for this step:**
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/3_helpers.js" %}`library/3_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/4_helpers.js" %}`library/4_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/5_helpers.js" %}`library/5_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/7_helpers.js" %}`library/7_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/7-send-xrp/index.js" %}`7-send-xrp/index.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/7-send-xrp/view/preload.js" %}`7-send-xrp/view/preload.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/7-send-xrp/view/renderer.js" %}`7-send-xrp/view/renderer.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/7-send-xrp/view/template.html" %}`7-send-xrp/view/template.html`{% /repo-link %}.
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/3_helpers.js" %}`library/3_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/4_helpers.js" %}`library/4_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/5_helpers.js" %}`library/5_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/7_helpers.js" %}`library/7_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/7-send-xrp/index.js" %}`7-send-xrp/index.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/7-send-xrp/view/preload.js" %}`7-send-xrp/view/preload.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/7-send-xrp/view/renderer.js" %}`7-send-xrp/view/renderer.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/7-send-xrp/view/template.html" %}`7-send-xrp/view/template.html`{% /repo-link %}.
Up until now we have enabled our app to query and display data from the XRPL. Now it's time to actively participate in the ledger by enabling our application to send transactions. For now, we can stick to sending direct XRP payments because there are more complexities involved in sending issued tokens. After finishing this step the application should look like this:
@@ -1182,15 +1182,15 @@ npm run send-xrp
### 8. Domain Verification and Polish
**Full code for this step:**
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/3_helpers.js" %}`library/3_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/4_helpers.js" %}`library/4_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/5_helpers.js" %}`library/5_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/7_helpers.js" %}`library/7_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/library/8_helpers.js" %}`library/8_helpers.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/8-domain-verification/index.js" %}`8-domain-verification/index.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/8-domain-verification/view/preload.js" %}`8-domain-verification/view/preload.js`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/8-domain-verification/view/template.html" %}`8-domain-verification/view/template.html`{% /repo-link %},
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/8-domain-verification/view/renderer.js" %}`8-domain-verification/view/renderer.js`{% /repo-link %}.
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/3_helpers.js" %}`library/3_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/4_helpers.js" %}`library/4_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/5_helpers.js" %}`library/5_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/7_helpers.js" %}`library/7_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/library/8_helpers.js" %}`library/8_helpers.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/8-domain-verification/index.js" %}`8-domain-verification/index.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/8-domain-verification/view/preload.js" %}`8-domain-verification/view/preload.js`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/8-domain-verification/view/template.html" %}`8-domain-verification/view/template.html`{% /repo-link %},
+{% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/js/8-domain-verification/view/renderer.js" %}`8-domain-verification/view/renderer.js`{% /repo-link %}.
One of the biggest shortcomings of the wallet app from the previous step is that it doesn't provide a lot of protections or feedback for users to save them from human error and scams. These sorts of protections are extra important when dealing with the cryptocurrency space because decentralized systems like the XRP Ledger don't have an admin or support team one can ask to cancel or refund a payment if you made a mistake such as sending it to the wrong address.
diff --git a/docs/tutorials/sample-apps/build-a-desktop-wallet-in-python.md b/docs/tutorials/sample-apps/build-a-desktop-wallet-in-python.md
index 3f8925af7e..c8461beaac 100644
--- a/docs/tutorials/sample-apps/build-a-desktop-wallet-in-python.md
+++ b/docs/tutorials/sample-apps/build-a-desktop-wallet-in-python.md
@@ -19,7 +19,7 @@ To complete this tutorial, you should meet the following guidelines:
## Source Code
-You can find the complete source code for all of this tutorial's examples in the {% repo-link path="_code-samples/build-a-desktop-wallet/py/" %}code samples section of this website's repository{% /repo-link %}.
+You can find the complete source code for all of this tutorial's examples in the {% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/py/" %}code samples section of this website's repository{% /repo-link %}.
## Goals
@@ -95,7 +95,7 @@ Under the hood, the code makes a JSON-RPC client, connects to a public Testnet s
### 2. Show Ledger Updates
-**Full code for this step:** {% repo-link path="_code-samples/build-a-desktop-wallet/py/2_threaded.py" %}`2_threaded.py`{% /repo-link %}.
+**Full code for this step:** {% repo-link repo="devportal" path="_code-samples/build-a-desktop-wallet/py/2_threaded.py" %}`2_threaded.py`{% /repo-link %}.
You may have noticed that the app in step 1 only shows the latest validated ledger at the time you opened it: the text displayed never changes unless you close the app and reopen it. The actual XRP Ledger is constantly making forward progress, so a more useful app would show it, something like this:
@@ -161,7 +161,7 @@ On Windows, open Edge or Chrome and browse to
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/1_ledger-index.js" %}`1-ledger-index/index.js`{% /repo-link %}
+{% repo-link repo="devportal" path="_code-samples/get-started" %}Get Started{% /repo-link %}
Demonstration:
-{% repo-link path="_code-samples/build-a-desktop-wallet/js/1_ledger-index.js" %}`1-ledger-index/index.js`{% /repo-link %}
+{% repo-link repo="devportal" path="_code-samples/get-started" %}Get Started{% /repo-link %}
### Try It
diff --git a/resources/contribute-documentation/tutorial-guidelines.md b/resources/contribute-documentation/tutorial-guidelines.md
index 5ea436288b..9866b99818 100644
--- a/resources/contribute-documentation/tutorial-guidelines.md
+++ b/resources/contribute-documentation/tutorial-guidelines.md
@@ -21,7 +21,7 @@ LLMs are increasingly being used in software development. To assist users of the
## Recommended Tutorial Structure
-Use the {% repo-link path="/resources/contribute-documentation/_tutorial-template.md" %}`_tutorial-template.md` file{% /repo-link %} as a starting point with typical headers and contents expected for a new tutorial. See below for recommendations of what type of content to include in each section.
+Use the {% repo-link repo="devportal" path="resources/contribute-documentation/_tutorial-template.md" %}`_tutorial-template.md` file{% /repo-link %} as a starting point with typical headers and contents expected for a new tutorial. See below for recommendations of what type of content to include in each section.
### Introduction