Skip to main content

reth_node_builder/
lib.rs

1//! Standalone crate for Reth configuration and builder types.
2//!
3//! # features
4//! - `js-tracer`: Enable the `JavaScript` tracer for the `debug_trace` endpoints
5
6#![doc(
7    html_logo_url = "https://raw.githubusercontent.com/paradigmxyz/reth/main/assets/reth-docs.png",
8    html_favicon_url = "https://avatars0.githubusercontent.com/u/97369466?s=256",
9    issue_tracker_base_url = "https://github.com/paradigmxyz/reth/issues/"
10)]
11#![cfg_attr(not(test), warn(unused_crate_dependencies))]
12#![cfg_attr(docsrs, feature(doc_cfg))]
13
14/// Node event hooks.
15pub mod hooks;
16
17/// Support for configuring the higher level node types.
18pub mod node;
19pub use node::*;
20
21/// Support for accessing the EngineApi outside the RPC server context.
22mod engine_api_ext;
23pub use engine_api_ext::EngineApiExt;
24
25/// Support for configuring the components of a node.
26pub mod components;
27pub use components::{NodeComponents, NodeComponentsBuilder};
28
29mod builder;
30pub use builder::{add_ons::AddOns, *};
31
32mod launch;
33pub use launch::{
34    debug::{DebugNode, DebugNodeLauncher, DebugNodeLauncherFuture, DefaultDebugBlockProvider},
35    engine::EngineNodeLauncher,
36    *,
37};
38
39mod txpool_prewarm;
40
41mod handle;
42pub use handle::NodeHandle;
43
44pub mod rpc;
45
46pub mod setup;
47
48/// Type aliases for traits that are often used together
49pub mod aliases;
50pub use aliases::*;
51
52/// Support for installing the ExExs (execution extensions) in a node.
53pub mod exex;
54
55/// Re-export the core configuration traits.
56pub use reth_node_core::cli::config::{
57    PayloadBuilderConfig, RethNetworkConfig, RethTransactionPoolConfig,
58};
59
60// re-export the core config for convenience
61pub use reth_node_core::node_config::NodeConfig;
62
63// re-export API types for convenience
64pub use reth_node_api::*;
65
66use aquamarine as _;
67
68use reth_rpc as _;