https://github.com/rjected/mempool-history
Eth mempool history
https://github.com/rjected/mempool-history
Last synced: 9 months ago
JSON representation
Eth mempool history
- Host: GitHub
- URL: https://github.com/rjected/mempool-history
- Owner: Rjected
- License: mit
- Created: 2022-08-31T19:59:00.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2022-09-02T18:45:22.000Z (almost 4 years ago)
- Last Synced: 2025-03-30T20:03:00.148Z (about 1 year ago)
- Language: Rust
- Size: 12.7 KB
- Stars: 30
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# mempool-history
[](https://github.com/rjected/mempool-history/blob/main/LICENSE)
[](https://github.com/Rjected/mempool-history/actions/workflows/ci.yml)
This tool uses ethereum pending transaction RPCs to listen for mempool transactions and timestamp them.
The purpose of this tool is to gather data that roughly matches the "true" mempool history so it can be easily replayed while testing other applications.
## Requirements
* Rust
* A **websocket** RPC endpoint with a working `eth_subscribe` and `eth_getTransactionByHash` endpoint
## Usage
For now, this is how you run the tool:
```bash
cargo run -- --rpc-url
```
## TODO
- [ ] Persist timestamped transactions
- [ ] Figure out how to gracefully recover after a crash. Make sure the tool does not overwrite timestamps of a transaction that already exists. (_stretch goal_)
- [ ] Simplify if on alchemy by using `alchemy_pendingTransactions`
- [ ] Prettier or more useful output (JSON? frontend?) (_stretch goal_)
- [ ] Prioritize showing `Transaction`s that are not yet included in a block
- [ ] Relate unconfirmed transactions with consecutive account nonces
- [ ] [mempool.space](https://mempool.space) but for ethereum? (_extreme stretch goal_)
- [ ] Name the tool
- [ ] Add tests
- [ ] Turn these bullet points into github issues