Skip to content
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

Docs directory restructure: Partials, images, third-party docs #1247

Draft
wants to merge 16 commits into
base: master
Choose a base branch
from
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Arbitrum Docs, built with docusaurus; docs are live at https://developer.arbitru

## Contribution

For most of the docs content, you can contribute by simply reviewing our [docs contribution guidelines](https://docs.arbitrum.io/for-devs/contribute) and opening a PR!
For most of the docs content, you can contribute by simply reviewing our [docs contribution guidelines](https://docs.arbitrum.io/contribute) and opening a PR!

The following are the only exceptions:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -522,7 +522,7 @@ If you have any questions or feedback, reach out to us on [Discord](https://disc
[^3]: There are multiple types of Ethereum nodes. The ones that earn ETH for processing and validating transactions are called _validators_. See [Nodes and Networks](https://docs.prylabs.network/docs/concepts/nodes-networks) for a beginner-friendly introduction to Ethereum's node types.
[^4]: When our `VendingMachine` contract is deployed to Ethereum, it'll be hosted by Ethereum's decentralized network of nodes. Generally speaking, we won't be able to modify the contract's code after it's deployed.
[^5]: To learn more about how Ethereum wallets work, see [Ethereum.org's introduction to Ethereum wallets](https://ethereum.org/en/wallets/).
[^6]: Visit the [Gentle Introduction to Arbitrum](../intro/intro.md) for a beginner-friendly introduction to Arbitrum's rollup protocol.
[^6]: Visit the [Gentle Introduction to Arbitrum](/welcome/arbitrum-gentle-introduction.md) for a beginner-friendly introduction to Arbitrum's rollup protocol.

<!-- TODOs

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ content_type: concept

import PublicPreviewBannerPartial from '../../partials/_public-preview-banner-partial.md';

<PublicPreviewBannerPartial />
<PublicPreviewBannerPartial />;

The Arbitrum Nitro software includes a special `NodeInterface` contract available at address `0xc8` that is only accessible via RPCs (it's not actually deployed on-chain, and thus can't be called by smart contracts). The way it works is that the node uses Geth's [`InterceptRPCMessage`](https://github.com/OffchainLabs/go-ethereum/blob/@goEthereumCommit@/internal/ethapi/api.go#L1034) hook to detect messages sent to the address `0xc8`, and swaps out the message it's handling before deriving a transaction from it.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@ The Arbitrum Nitro software includes a special `NodeInterface` contract availabl

## NodeInterface methods

import NodeInterfaceRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_NodeInterface.md';
import NodeInterfaceRef from '../precompiles/partials/precompile-tables/_NodeInterface.md';

<NodeInterfaceRef />
Original file line number Diff line number Diff line change
Expand Up @@ -247,5 +247,5 @@ You can adapt this contract to your needs. Just remember to use the ticker of th
### See also

- [Tellor’s documentation](https://docs.tellor.io/) demonstrates how to query price feeds and other data feeds.
- [How to use Supra's price feed oracle](/for-devs/third-party-docs/Supra/use-supras-price-feed-oracle)
- [How to use Supra's VRF](/for-devs/third-party-docs/Supra/use-supras-vrf)
- [How to use Supra's price feed oracle](/third-party-docs/Supra/use-supras-price-feed-oracle)
- [How to use Supra's VRF](/third-party-docs/Supra/use-supras-vrf)
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ user_story: As a developer, I want to understand what oracles are available in t
content_type: overview
---

import KnowMoreToolsBox from '../../for-devs/partials/_know-more-tools-box-partial.md';
import KnowMoreToolsBox from '../partials/_know-more-tools-box-partial.md';

<KnowMoreToolsBox />

Expand Down
24 changes: 12 additions & 12 deletions arbitrum-docs/build-decentralized-apps/precompiles/02-reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ ArbAddressTable ([Interface][arbaddresstable_link_interface] | [Implementation][

Precompile address: `0x0000000000000000000000000000000000000066`

import ArbAddressTableRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_ArbAddressTable.md';
import ArbAddressTableRef from './partials/precompile-tables/_ArbAddressTable.md';

<ArbAddressTableRef />

Expand All @@ -83,7 +83,7 @@ Compression ratios are measured in basis points. Methods that are checkmarked ar

Precompile address: `0x000000000000000000000000000000000000006D`

import ArbAggregatorRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_ArbAggregator.md';
import ArbAggregatorRef from './partials/precompile-tables/_ArbAggregator.md';

<ArbAggregatorRef />

Expand All @@ -101,7 +101,7 @@ ArbDebug ([Interface][arbdebug_link_interface] | [Implementation][arbdebug_link_

Precompile address: `0x00000000000000000000000000000000000000ff`

import ArbDebugRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_ArbDebug.md';
import ArbDebugRef from './partials/precompile-tables/_ArbDebug.md';

<ArbDebugRef />

Expand All @@ -111,7 +111,7 @@ ArbFunctionTable ([Interface][arbfunctiontable_link_interface] | [Implementation

Precompile address: `0x0000000000000000000000000000000000000068`

import ArbFunctionTableRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_ArbFunctionTable.md';
import ArbFunctionTableRef from './partials/precompile-tables/_ArbFunctionTable.md';

<ArbFunctionTableRef />

Expand All @@ -121,7 +121,7 @@ ArbGasInfo ([Interface][arbgasinfo_link_interface] | [Implementation][arbgasinfo

Precompile address: `0x000000000000000000000000000000000000006C`

import ArbGasInfoRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_ArbGasInfo.md';
import ArbGasInfoRef from './partials/precompile-tables/_ArbGasInfo.md';

<ArbGasInfoRef />

Expand All @@ -131,7 +131,7 @@ ArbInfo ([Interface][arbinfo_link_interface] | [Implementation][arbinfo_link_imp

Precompile address: `0x0000000000000000000000000000000000000065`

import ArbInfoRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_ArbInfo.md';
import ArbInfoRef from './partials/precompile-tables/_ArbInfo.md';

<ArbInfoRef />

Expand All @@ -141,7 +141,7 @@ ArbosTest ([Interface][arbostest_link_interface] | [Implementation][arbostest_li

Precompile address: `0x0000000000000000000000000000000000000069`

import ArbosTestRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_ArbosTest.md';
import ArbosTestRef from './partials/precompile-tables/_ArbosTest.md';

<ArbosTestRef />

Expand All @@ -157,7 +157,7 @@ Most of Arbitrum Classic's owner methods have been removed since they no longer

Precompile address: `0x0000000000000000000000000000000000000070`

import ArbOwnerRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_ArbOwner.md';
import ArbOwnerRef from './partials/precompile-tables/_ArbOwner.md';

<ArbOwnerRef />

Expand All @@ -167,7 +167,7 @@ ArbOwnerPublic ([Interface][arbownerpublic_link_interface] | [Implementation][ar

Precompile address: `0x000000000000000000000000000000000000006b`

import ArbOwnerPublicRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_ArbOwnerPublic.md';
import ArbOwnerPublicRef from './partials/precompile-tables/_ArbOwnerPublic.md';

<ArbOwnerPublicRef />

Expand All @@ -177,7 +177,7 @@ ArbRetryableTx ([Interface][arbretryabletx_link_interface] | [Implementation][ar

Precompile address: `0x000000000000000000000000000000000000006E`

import ArbRetryableTxRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_ArbRetryableTx.md';
import ArbRetryableTxRef from './partials/precompile-tables/_ArbRetryableTx.md';

<ArbRetryableTxRef />

Expand All @@ -187,7 +187,7 @@ ArbStatistics ([Interface][arbstatistics_link_interface] | [Implementation][arbs

Precompile address: `0x000000000000000000000000000000000000006F`

import ArbStatisticsRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_ArbStatistics.md';
import ArbStatisticsRef from './partials/precompile-tables/_ArbStatistics.md';

<ArbStatisticsRef />

Expand All @@ -197,6 +197,6 @@ ArbSys ([Interface][arbsys_link_interface] | [Implementation][arbsys_link_implem

Precompile address: `0x0000000000000000000000000000000000000064`

import ArbSysRef from '../../for-devs/dev-tools-and-resources/partials/precompile-tables/_ArbSys.md';
import ArbSysRef from './partials/precompile-tables/_ArbSys.md';

<ArbSysRef />
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ user_story: As a developer, I want to understand the popular development framewo
content_type: overview
---

import KnowMoreToolsBox from '../../for-devs/partials/_know-more-tools-box-partial.md';
import KnowMoreToolsBox from '../partials/_know-more-tools-box-partial.md';

<KnowMoreToolsBox />

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ user_story: As a developer, I want to understand what web3 libraries and tools a
content_type: overview
---

import KnowMoreToolsBox from '../../for-devs/partials/_know-more-tools-box-partial.md';
import KnowMoreToolsBox from '../partials/_know-more-tools-box-partial.md';

<KnowMoreToolsBox />

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ user_story: As a developer, I want to understand what monitoring tools and block
content_type: overview
---

import KnowMoreToolsBox from '../../for-devs/partials/_know-more-tools-box-partial.md';
import KnowMoreToolsBox from '../partials/_know-more-tools-box-partial.md';

<KnowMoreToolsBox />

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ user_story: As a developer, I want to understand what debugging tools are availa
content_type: overview
---

import KnowMoreToolsBox from '../../for-devs/partials/_know-more-tools-box-partial.md';
import KnowMoreToolsBox from '../partials/_know-more-tools-box-partial.md';

<KnowMoreToolsBox />

Expand All @@ -15,7 +15,7 @@ The following tools will help you debug your decentralized apps (dApps):

[Tenderly](https://tenderly.co/) is an all-in-one Web3 development platform that empowers developers to build, test, monitor, and operate smart contracts from inception to mass adoption. Tenderly's debugging options focus on providing developers with efficient and user-friendly tools to identify and fix smart contract bugs and production issues. The Debugger enables developers to inspect smart contracts by analyzing precise lines of code in a human-readable format. With Tenderly's Simulator, developers can play out specific historical transactions and current transaction outcomes before sending them on-chain, allowing them to change relevant parameters and source code to test and debug contracts. The platform streamlines the debugging process, saving time and resources while improving smart contract reliability.

Although Tenderly provides great debugging options, there are certain limitations when debugging L1-to-L2 messages (also known as Retryable Tickets), due to the utilization of custom Geth errors. For further information on this constraint, please refer to the following [resource](/for-devs/troubleshooting-building#i-tried-to-create-a-retryable-ticket-but-the-transaction-reverted-on-l1--how-can-i-debug-the-issue).
Although Tenderly provides great debugging options, there are certain limitations when debugging L1-to-L2 messages (also known as Retryable Tickets), due to the utilization of custom Geth errors. For further information on this constraint, please refer to the following [resource](/build-decentralized-apps/troubleshooting-building.md#i-tried-to-create-a-retryable-ticket-but-the-transaction-reverted-on-l1--how-can-i-debug-the-issue).

### Arbiscan

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ content_type: concept
sidebar_position: 2
---

import DepositEthDiagram from '../../diagrams/_deposit-eth.mdx';
import WithdrawEthDiagram from '../../diagrams/_withdraw-eth.mdx';
import DepositEthDiagram from './partials/_deposit-eth.mdx';
import WithdrawEthDiagram from './partials/_withdraw-eth.mdx';

Ether (ETH) is the native currency of Ethereum and all Arbitrum chains. It is used to pay the necessary fees to execute a transaction in those chains. Bridging ETH from Ethereum (Layer 1, or L1) to an Arbitrum chain (Layer 2, or L2) follows, thus, a different process than the one followed when bridging other types of asset.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
import PublicPreviewBannerPartial from '../partials/_public-preview-banner-partial.md';
---
title: 'Contribute docs'
description: "Learn how to contribute to Arbitrum's documentation"
---

import PublicPreviewBannerPartial from './partials/_public-preview-banner-partial.md';

<PublicPreviewBannerPartial />

Expand Down Expand Up @@ -27,7 +32,7 @@ If a document isn't in a `Third-party content` sidebar node, it's a **core docum

**Third-party docs** are documents that help readers of Arbitrum docs use other products, services, and protocols (like the ones listed in the [Arbitrum portal](https://portal.arbitrum.io/)) with Arbitrum products.

See [Contribute third-party docs](/for-devs/third-party-docs/contribute) for detailed instructions.
See [Contribute third-party docs](/third-party-docs/contribute) for detailed instructions.

### Request an update

Expand Down Expand Up @@ -116,7 +121,7 @@ Every document should be a specific _type_ of document. Each type of document ha
| Quickstart | Onboard a specific reader audience with step-by-step "learn by doing" instructions | [Quickstart: Build dApps](/build-decentralized-apps/01-quickstart-solidity-hardhat.md) |
| How-to | Provide task-oriented procedural guidance | [How to run a local dev node](/run-arbitrum-node/04-run-local-dev-node.md) |
| Concept | Explain what things are and how they work | [Token bridging](/build-decentralized-apps/token-bridging/03-token-bridge-erc20.md) <br/>[Nodes and networks](https://docs.prylabs.network/docs/concepts/nodes-networks) |
| FAQ | Address frequently asked questions | [FAQ: Run a node](../node-running/faq.md) |
| FAQ | Address frequently asked questions | [FAQ: Run a node](/run-arbitrum-node/faq.md) |
| Troubleshooting | List common troubleshooting scenarios and solutions | [Troubleshooting: Run a node](/run-arbitrum-node/06-troubleshooting.md) |
| Reference | Lists and tables of things, such as API endpoints and developer resources | [RPC endpoints and providers](/build-decentralized-apps/reference/01-node-providers.md) |

Expand Down Expand Up @@ -174,7 +179,7 @@ Example:
Usage:

```
import PublicPreviewBannerPartial from '../partials/_public-preview-banner-partial.md';
import PublicPreviewBannerPartial from './partials/_public-preview-banner-partial.md';

<PublicPreviewBannerPartial />
```
Expand Down
2 changes: 1 addition & 1 deletion arbitrum-docs/learn-more/faq.md → arbitrum-docs/faq.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ content_type: faq
---

import FAQStructuredDataJsonLd from '@site/src/components/FAQStructuredData';
import FAQQuestions from '../partials/_troubleshooting-users-partial.md';
import FAQQuestions from './partials/_troubleshooting-users-partial.md';

<FAQStructuredDataJsonLd faqsId="get-started" />
<FAQQuestions />
9 changes: 0 additions & 9 deletions arbitrum-docs/for-devs/contribute.md

This file was deleted.

8 changes: 0 additions & 8 deletions arbitrum-docs/for-users/contribute.md

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ user_story: As a user, I want to review a list of terms and definitions that are
content_type: glossary
---

import GlossaryPartial from '../partials/_glossary-partial.md';
import GlossaryPartial from './partials/_glossary-partial.md';

<div data-faq-origin-slug="build-faq">
<GlossaryPartial />
Expand Down
2 changes: 1 addition & 1 deletion arbitrum-docs/how-arbitrum-works/assertion-tree.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ In the happy / common case, all outstanding assertions will be valid; i.e., a va

If, however, two or more conflicting assertions exist, the Assertion Tree bifurcates into multiple branches:

![img](../assets/assertionTree.png)
![img](./images/assertionTree.png)

Crucially, the rules of advancing an Arbitrum chain are deterministic; this means that given a chain state and some new inputs, there is only one valid output. Thus, if the Assertion Tree contains more than one leaf, then at most only one leaf can represent the valid chain-state; if we assume there is at least one honest active validator, _exactly_ one leaf will be valid.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import ChallengeManagerDiagram from '../../diagrams/_challenge-manager.mdx';
import ChallengeManagerDiagram from './partials/_challenge-manager.mdx';

# ChallengeManager

Expand Down
4 changes: 2 additions & 2 deletions arbitrum-docs/how-arbitrum-works/inside-arbitrum-nitro.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ The essence of Nitro, and its key innovations, lie in four big ideas. We'll list

This diagram summarizes how transactions are processed in Nitro.

![seq-then-exec](../assets/seq-then-exec.png)
![seq-then-exec](./images/seq-then-exec.png)

Let's follow a user's transaction through this process.

Expand Down Expand Up @@ -94,7 +94,7 @@ The Sequencer's batches are compressed using a general-purpose data compression

The second key design idea in Nitro is "geth at the core." Here "geth" refers to go-ethereum, the most common node software for Ethereum. As its name would suggest, go-ethereum is written in the Go programming language, as is almost all of Nitro.

![geth-sandwich](../assets/geth-sandwich.png)
![geth-sandwich](./images/geth-sandwich.png)

The software that makes up a Nitro node can be thought of as built in three main layers, which are shown above:

Expand Down
2 changes: 1 addition & 1 deletion arbitrum-docs/how-arbitrum-works/tx-lifecycle.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ We'll also intersperse it with "finality checks," explaining what guarantees the

This overview will be focused on the Arbitrum Rollup protocol; see [Inside AnyTrust](/how-arbitrum-works/inside-anytrust.md) for differences in the Arbitrum AnyTrust protocol. Also, for convenience/simplicity, we'll be describing the security properties of the core system itself; see ["State of Progressive Decentralization"](https://docs.arbitrum.foundation/state-of-progressive-decentralization) for current decentralization status.

For clarity on any terminology that may be unfamiliar, see our [glossary](/intro/glossary.mdx).
For clarity on any terminology that may be unfamiliar, see our [glossary](/glossary.mdx).

### 1. Sequencer receives transaction

Expand Down
13 changes: 0 additions & 13 deletions arbitrum-docs/intro/intro.md

This file was deleted.

Loading