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, doc_auto_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},
35    engine::EngineNodeLauncher,
36    *,
37};
38
39mod handle;
40pub use handle::NodeHandle;
41
42pub mod rpc;
43
44pub mod setup;
45
46/// Type aliases for traits that are often used together
47pub mod aliases;
48pub use aliases::*;
49
50/// Support for installing the ExExs (execution extensions) in a node.
51pub mod exex;
52
53/// Re-export the core configuration traits.
54pub use reth_node_core::cli::config::{
55    PayloadBuilderConfig, RethNetworkConfig, RethTransactionPoolConfig,
56};
57
58// re-export the core config for convenience
59pub use reth_node_core::node_config::NodeConfig;
60
61// re-export API types for convenience
62pub use reth_node_api::*;
63
64use aquamarine as _;
65
66use reth_rpc as _;