diff --git a/book/SUMMARY.md b/book/SUMMARY.md index 27cbb66ee..9bcc6d8d2 100644 --- a/book/SUMMARY.md +++ b/book/SUMMARY.md @@ -21,8 +21,13 @@ 1. [rpc](./jsonrpc/rpc.md) 1. [CLI Reference](./cli/cli.md) 1. [reth node](./cli/node.md) + 1. [reth init](./cli/init.md) + 1. [reth import](./cli/import.md) 1. [reth db](./cli/db.md) - 1. [reth p2p](./cli/p2p.md) 1. [reth stage](./cli/stage.md) + 1. [reth p2p](./cli/p2p.md) + 1. [reth test-vectors](./cli/test-vectors.md) + 1. [reth config](./cli/config.md) + 1. [reth debug](./cli/debug.md) 1. [Developers](./developers/developers.md) - 1. [Contribute](./developers/contribute.md) \ No newline at end of file + 1. [Contribute](./developers/contribute.md) diff --git a/book/fundamentals/command-line_options.md b/book/fundamentals/command-line_options.md deleted file mode 100644 index 15bb8986e..000000000 --- a/book/fundamentals/command-line_options.md +++ /dev/null @@ -1,13 +0,0 @@ -# Command-Line Options - -## Command -- **node:** Start Reth node -- **test-chain:** Run Ethereum blockchain tests -- **db:** Debugging utilities to troubleshoot and fix issues with database systems. - -## Options -- **-v, --verbose:** Use verbose output -- **--silent:** Silence all output -- **--disable-discovery:** Do not spawn the discv4 service when running node. -- **-h, --help:** Print help information -- **-V, --version:** Print version information diff --git a/book/fundamentals/logs.md b/book/fundamentals/logs.md deleted file mode 100644 index ee4e2481e..000000000 --- a/book/fundamentals/logs.md +++ /dev/null @@ -1,3 +0,0 @@ -# Logs - -Reth nodes constantly output messages to the console, giving users the ability to monitor the current status of Reth in real-time. These logs can be helpful in understanding the normal operation of Reth, as well as identifying when issues may arise. However, interpreting these logs can be challenging for new users. This page aims to provide guidance on how to read and understand the log messages generated by Reth. \ No newline at end of file diff --git a/book/fundamentals/node.md b/book/fundamentals/node.md deleted file mode 100644 index 0abe3fa8a..000000000 --- a/book/fundamentals/node.md +++ /dev/null @@ -1,7 +0,0 @@ -# Node - -Reth is a new Ethereum full node that allows users to sync and interact with the entire blockchain, including its historical state if in archive mode. - -- Full node: It can be used as a full node, which stores and processes the entire blockchain, validates blocks and transactions, and participates in the consensus process. - -- Archive node: It can also be used as an archive node, which stores the entire history of the blockchain and is useful for applications that need access to historical data. \ No newline at end of file diff --git a/book/installation/installation.md b/book/installation/installation.md index d4653b97f..7f6dc4dec 100644 --- a/book/installation/installation.md +++ b/book/installation/installation.md @@ -23,7 +23,7 @@ The most important requirement is by far the disk, whereas CPU and RAM requireme ### Disk -There are multiple types of disks to sync Reth, with varying size requirements, depending on the [syncing mode](../run/sync-modes.md): +There are multiple types of disks to sync Reth, with varying size requirements, depending on the syncing mode: * Archive Node: At least 2TB is required to store * Full Node: TBD @@ -36,7 +36,7 @@ At the time of writing, syncing an Ethereum mainnet node to block 17.4M on NVMe Most of the time during syncing is spent executing transactions, which is a single-threaded operation due to potential state dependencies of a transaction on previous ones. -As a result, the number of cores matters less, but in general higher clock speeds are better. More cores are better for parallelizable [stages](../developers/architecture.md) (like sender recovery or bodies downloading), but these stages are not the primary bottleneck for syncing. +As a result, the number of cores matters less, but in general higher clock speeds are better. More cores are better for parallelizable [stages](https://github.com/paradigmxyz/reth/blob/main/docs/crates/stages.md) (like sender recovery or bodies downloading), but these stages are not the primary bottleneck for syncing. ### Memory diff --git a/book/installation/source.md b/book/installation/source.md index 63c62af59..a076e0003 100644 --- a/book/installation/source.md +++ b/book/installation/source.md @@ -123,7 +123,7 @@ Rust Version (MSRV) which is listed under the `rust-version` key in Reth's If compilation fails with `(signal: 9, SIGKILL: kill)`, this could mean your machine ran out of memory during compilation. If you are on Docker, consider increasing the memory of the container, or use a [pre-built -binary](../binaries.md). +binary](../installation/binaries.md). If compilation fails with `error: linking with cc failed: exit code: 1`, try running `cargo clean`. diff --git a/book/intro.md b/book/intro.md index a1325e4bc..b2fada745 100644 --- a/book/intro.md +++ b/book/intro.md @@ -82,8 +82,8 @@ Here are some useful sections to jump to: - Install Reth by following the [guide](./installation/installation.md). - Sync your node on any [official network](./run/run-a-node.md). - View [statistics and metrics](./run/observability.md) about your node. -- Query the [JSON-RPC](./api/api.md) using Foundry's `cast` or `curl`. -- Set up your [development environment and contribute](./contribute.md)! +- Query the [JSON-RPC](./jsonrpc/intro.md) using Foundry's `cast` or `curl`. +- Set up your [development environment and contribute](./developers/contribute.md)! > 📖 **About this book** > diff --git a/book/jsonrpc/admin.md b/book/jsonrpc/admin.md index 67b520b86..31fdf4902 100644 --- a/book/jsonrpc/admin.md +++ b/book/jsonrpc/admin.md @@ -27,9 +27,9 @@ The method accepts a single argument, the [`enode`][enode] URL of the remote pee Disconnects from a peer if the connection exists. Returns a `bool` indicating whether the peer was successfully removed or not. -| Client | Method invocation | -|--------|-------------------------------------------------------| -| RPC | `{"method": "admin_removePeer", "params": [url]}` | +| Client | Method invocation | +|--------|----------------------------------------------------| +| RPC | `{"method": "admin_removePeer", "params": [url]}` | ### Example diff --git a/book/run/mainnet.md b/book/run/mainnet.md index 1a7c01b6d..697d9927a 100644 --- a/book/run/mainnet.md +++ b/book/run/mainnet.md @@ -14,7 +14,7 @@ Now, start the node as follows: RUST_LOG=info reth node ``` -> Note that this command will not open any HTTP/WS ports by default. You can change this by adding the `--http`, `--ws` flags, respectively and using the `--http.api` and `--ws.api` flags to enable various [JSON-RPC APIs](../api/api.md). For more commands, see the [`reth node` CLI reference](../cli/node.md). +> Note that this command will not open any HTTP/WS ports by default. You can change this by adding the `--http`, `--ws` flags, respectively and using the `--http.api` and `--ws.api` flags to enable various [JSON-RPC APIs](../jsonrpc/intro.md). For more commands, see the [`reth node` CLI reference](../cli/node.md). The EL <> CL communication happens over the [Engine API](https://github.com/ethereum/execution-apis/blob/main/src/engine/common.md), which is by default exposed at `http://localhost:8551`. The connection is authenticated over JWT using a JWT secret which is auto-generated by Reth under `~/.local/share/reth/mainnet/jwt.hex` in Linux (`/Users//Library/Application Support/reth/mainnet/jwt.hex` in Mac). @@ -49,7 +49,7 @@ Your Reth node should start receiving "fork choice updated" messages, and begin ## Verify the chain is growing You can easily verify that by inspecting the logs, and seeing that headers are arriving in Reth. Sit back now and wait for the stages to run! -In the meantime, consider setting up [observability](./observability.md) to monitor your node's health or [test the JSON RPC API](../api/api.md). +In the meantime, consider setting up [observability](./observability.md) to monitor your node's health or [test the JSON RPC API](../jsonrpc/intro.md). diff --git a/book/run/observability.md b/book/run/observability.md index 0b24f139a..bae6f9a76 100644 --- a/book/run/observability.md +++ b/book/run/observability.md @@ -61,7 +61,7 @@ In this runbook, we took you through starting the node, exposing different log l This will all be very useful to you, whether you're simply running a home node and want to keep an eye on its performance, or if you're a contributor and want to see the effect that your (or others') changes have on Reth's operations. -[installation]: ./installation.md +[installation]: ../installation/installation.md [release-profile]: https://doc.rust-lang.org/cargo/reference/profiles.html#release [docs]: https://github.com/paradigmxyz/reth/tree/main/docs [metrics]: https://github.com/paradigmxyz/reth/blob/main/docs/design/metrics.md#current-metrics \ No newline at end of file diff --git a/book/run/run-a-node.md b/book/run/run-a-node.md index 4aa7ffef6..1363761b9 100644 --- a/book/run/run-a-node.md +++ b/book/run/run-a-node.md @@ -4,7 +4,6 @@ Congratulations, now that you have installed Reth, it's time to run it! In this chapter we'll go through a few different topics you'll encounter when running Reth, including: 1. [Running on mainnet or official testnets](./mainnet.md) -1. [Setting up a local testnet](./local_testnet.md) 1. [Logs and Observability](./observability.md) 1. [Configuring reth.toml](./config.md)