diff --git a/firehose-setup/chains/README.md b/firehose-setup/chains/README.md index 1ad4871..a39ccf9 100644 --- a/firehose-setup/chains/README.md +++ b/firehose-setup/chains/README.md @@ -26,6 +26,7 @@ Ethereum and EVM-compatible chains use `fireeth` and share similar configuration | [Optimism](../ethereum/optimism.md) | Native Firehose | OP Stack, requires OP Node | | [Polygon](../ethereum/polygon.md) | Native Firehose | Bor client | | [Unichain](../ethereum/unichain.md) | Native Firehose | OP Stack | +| [Monad](../ethereum/monad.md) | Native Firehose | Monad BFT | | [Worldchain](../ethereum/worldchain.md) | Native Firehose | OP Stack | | [Avalanche](../avalanche/README.md) | RPC Poller | C-Chain via RPC | | [Sei](../sei/README.md) | Native Firehose | Cosmos SDK + EVM | diff --git a/firehose-setup/ethereum/README.md b/firehose-setup/ethereum/README.md index ded3bac..5ccf24d 100644 --- a/firehose-setup/ethereum/README.md +++ b/firehose-setup/ethereum/README.md @@ -36,6 +36,7 @@ Firehose for Ethereum supports **Geth and Geth forks**. Each network requires a | Optimism Mainnet, Sepolia | [Optimism](optimism.md) | | Polygon PoS | [Polygon](polygon.md) | | Unichain | [Unichain](unichain.md) | +| Monad Mainnet | [Monad](monad.md) | | Worldchain | [Worldchain](worldchain.md) | ## Common Configuration diff --git a/firehose-setup/ethereum/monad.md b/firehose-setup/ethereum/monad.md new file mode 100644 index 0000000..fd31476 --- /dev/null +++ b/firehose-setup/ethereum/monad.md @@ -0,0 +1,64 @@ +--- +description: Firehose configuration for Monad Mainnet +--- + +# Monad + +This page provides Monad Mainnet specific configuration. First read the [Ethereum general notes](README.md) for common information. + +{% hint style="info" %} +Monad runs its own node stack (`monad-bft` + `monad-execution`), distributed as a Debian package by Category Labs. The `monad-firehose-tracer` reads execution events emitted by `monad-execution` and outputs Firehose Protocol blocks. +{% endhint %} + +## Docker Image + +``` +ghcr.io/streamingfast/monad-firehose-tracer: +``` + +[View available versions on GitHub Packages](https://github.com/streamingfast/monad-firehose-tracer/pkgs/container/monad-firehose-tracer) + +The image contains both the `monad-firehose-tracer` binary and `fireeth`. + +## Client Binary + +| Client | Repository | Releases | +|--------|------------|----------| +| Monad Firehose Tracer | [streamingfast/monad-firehose-tracer](https://github.com/streamingfast/monad-firehose-tracer) | [GitHub Packages](https://github.com/streamingfast/monad-firehose-tracer/pkgs/container/monad-firehose-tracer) | + +## Networks + +| Network | Chain Name | +|---------|------------| +| Monad Mainnet | `monad-mainnet` | + +## Monad Node Dependency + +{% hint style="warning" %} +Monad requires a running Monad BFT node alongside the tracer. Refer to the [Monad documentation](https://docs.monad.xyz/) for node setup. +{% endhint %} + +## Reader Node Configuration + +```bash +fireeth start reader-node \ + --advertise-chain-name="monad-mainnet" \ + --reader-node-path="monad-firehose-tracer" \ + --reader-node-arguments="--chain-id=143 --network-name=monad-mainnet --monad-event-ring-path=/dev/hugepages/event-rings/monad-events --event-channel-buffer-size=524288" \ + +``` + +## Key Tracer Flags + +| Flag | Description | +|------|-------------| +| `--chain-id` | Monad chain ID (`143` for mainnet) | +| `--network-name` | Network name (e.g. `monad-mainnet`) | +| `--monad-event-ring-path` | Path to the execution event ring (e.g. `/dev/hugepages/event-rings/monad-events`) | +| `--event-channel-buffer-size` | Internal event channel buffer size (default: `524288`) | + +## Resources + +- [Monad Documentation](https://docs.monad.xyz/) +- [monad-firehose-tracer](https://github.com/streamingfast/monad-firehose-tracer) +- [firehose-ethereum GitHub](https://github.com/streamingfast/firehose-ethereum)