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 configuring the components of a node.
22pub mod components;
23pub use components::{NodeComponents, NodeComponentsBuilder};
24
25mod builder;
26pub use builder::{add_ons::AddOns, *};
27
28mod launch;
29pub use launch::{
30    debug::{DebugNode, DebugNodeLauncher},
31    engine::EngineNodeLauncher,
32    *,
33};
34
35mod handle;
36pub use handle::NodeHandle;
37
38pub mod rpc;
39
40pub mod setup;
41
42/// Type aliases for traits that are often used together
43pub mod aliases;
44pub use aliases::*;
45
46/// Support for installing the ExExs (execution extensions) in a node.
47pub mod exex;
48
49/// Re-export the core configuration traits.
50pub use reth_node_core::cli::config::{
51    PayloadBuilderConfig, RethNetworkConfig, RethTransactionPoolConfig,
52};
53
54// re-export the core config for convenience
55pub use reth_node_core::node_config::NodeConfig;
56
57// re-export API types for convenience
58pub use reth_node_api::*;
59
60use aquamarine as _;
61
62use reth_rpc as _;