docs: update examples readme (#7852)

This commit is contained in:
Oliver Nordbjerg
2024-04-24 23:58:26 +02:00
committed by GitHub
parent 0e8e573180
commit 4cef3809e4

View File

@ -1,17 +1,67 @@
## Examples of how to use the Reth SDK # Examples
This directory contains a number of examples showcasing various capabilities of These examples demonstrate the main features of some of Reth's crates and how to use them.
the `reth-*` crates.
All examples can be executed with: To run an example, use the command `cargo run -p <example>`.
```
cargo run --example $name
```
A good starting point for the examples would be [`db-access`](db-access.rs)
and [`rpc-db`](rpc-db).
If you've got an example you'd like to see here, please feel free to open an If you've got an example you'd like to see here, please feel free to open an
issue. Otherwise if you've got an example you'd like to add, please feel free issue. Otherwise if you've got an example you'd like to add, please feel free
to make a PR! to make a PR!
## Node Builder
| Example | Description |
| ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ |
| [Additional RPC namespace](./additional-rpc-namespace-in-cli) | Illustrates how to add custom CLI parameters and set up a custom RPC namespace |
| [Custom event hooks](./cli-extension-event-hooks) | Illustrates how to hook to various node lifecycle events |
| [Custom dev node](./custom-dev-node) | Illustrates how to run a custom dev node programmatically and submit a transaction to it via RPC |
| [Custom EVM](./custom-evm) | Illustrates how to implement a node with a custom EVM |
| [Custom inspector](./custom-inspector) | Illustrates how to use a custom EVM inspector to trace new transactions |
| [Custom node](./custom-node) | Illustrates how to create a node with custom engine types |
| [Custom node components](./custom-node-components) | Illustrates how to configure custom node components |
| [Custom payload builder](./custom-payload-builder) | Illustrates how to use a custom payload builder |
## ExEx
| Example | Description |
| ---------------------------------- | --------------------------------------------------------------------------------- |
| [Minimal ExEx](./exex/minimal) | Illustrates how to build a simple ExEx |
| [OP Bridge ExEx](./exex/op-bridge) | Illustrates an ExEx that decodes Optimism deposit and withdrawal receipts from L1 |
## RPC
| Example | Description |
| ----------------------- | --------------------------------------------------------------------------- |
| [DB over RPC](./rpc-db) | Illustrates how to run a standalone RPC server over a Rethdatabase instance |
## Database
| Example | Description |
| --------------------------- | --------------------------------------------------------------- |
| [DB access](./db-access.rs) | Illustrates how to access Reth's database in a separate process |
## Network
| Example | Description |
| ---------------------------------- | ------------------------------------------------------------ |
| [Standalone network](./network.rs) | Illustrates how to use the network as a standalone component |
## Mempool
| Example | Description |
| ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| [Trace pending transactions](./trace-transaction-cli) | Illustrates how to trace pending transactions as they arrive in the mempool |
| [Standalone txpool](./network-txpool.rs) | Illustrates how to use the network as a standalone component together with a transaction pool with a custom pool validator |
## P2P
| Example | Description |
| --------------------------- | ----------------------------------------------------------------- |
| [Manual P2P](./manual-p2p) | Illustrates how to connect and communicate with a peer |
| [Polygon P2P](./manual-p2p) | Illustrates how to connect and communicate with a peer on Polygon |
## Misc
| Example | Description |
| ---------------------------------- | ----------------------------------------------------------- |
| [Beacon API SSE](./beacon-api-sse) | Illustrates how to subscribe to beacon chain events via SSE |