Practical overview
When it fits
Use it when you can connect to a functional Ethereum node and need a locally run scan of selected contract activity, rather than a hosted explorer service.
Who it is for
- Developers monitoring activity involving selected Ethereum contracts.
- Investigators searching Ethereum blocks for transactions and contract events.
Documented uses
- Scan a chosen block range or continue monitoring new blocks for specified contract addresses.
- Identify direct transactions involving monitored contracts and logs they emit.
- Send scan results to the terminal or format them for Graylog.
Requirements & limits
The repository is public and lists an MIT license. Running the tool requires access to a functional Ethereum node.
- Default mode inspects blocks, transactions and logs individually and is documented as slow and heavy on the node.
- Quick mode uses two RPC calls per block and is described as more efficient for direct transaction scanning.
- Transaction decoding requires contract ABIs, obtained through the Etherscan Contracts API or supplied as local JSON files.
- Inputs can be provided through CLI parameters, environment variables or a .watch.yml file; CLI values take priority.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Set up smart-contract-watch from its repository
Prepare the repository and connect it to an already functional Ethereum node.
Before you start
- A functional Ethereum node accessible through its node URL.
- Git and Yarn, as the documented setup uses Git to clone the repository and Yarn to install dependencies.
Steps
Clone the repository with the command below.
git clone https://github.com/Neufund/smart-contract-watchFrom the cloned repository, run
yarnto install dependencies.Provide the node URL and monitored contract address or addresses using the documented input options: CLI,
.env, or.watch.yml.
Expected outcome
The repository dependencies are installed and configuration can specify an Ethereum node and contract addresses for monitoring.
Guide limitations
- The project requires an already functional Ethereum node.
- This setup guide does not document execution or deployment steps.
Configure a contract scan and choose its output
Specify contracts, scan bounds, and output settings for a smart-contract-watch scan.
Before you start
- A functional Ethereum node and its node URL.
- One or more monitored contract addresses.
- Repository setup completed.
Steps
Select a documented input method: CLI,
.env, or.watch.yml; input methods can be mixed, with CLI taking priority over environment variables and config-file settings.Set the required contract address or addresses and node URL; optionally set a starting block and an ending block. If no ending block is set, scanning continues for new blocks indefinitely.
Optionally enable quick mode or set a block-confirmation count. Choose terminal or Graylog output, and set a log level if needed.
Provide contract ABIs through Etherscan importing or place a JSON ABI file in the local contracts directory, named exactly for the contract address.
Expected outcome
The tool has documented configuration for a contract scan, including its node, addresses, optional scan bounds and mode, ABI source, and output type.
Guide limitations
- Default mode scans block by block, transaction by transaction, and log by log; the README says this is slow and heavy on the node.
- Quick mode is described as faster and uses
eth_getBlockByHashandget_logsto process a block. - Graylog communication is described as using a Docker container.
- ABIs are required to decode transactions; the README identifies the local contracts directory as
./contractswhen explaining lookup order, and also gives adist/contracts/example path for manual ABI files.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 16 October 2026
- Original website title
- Neufund/smart-contract-watch · Official homepage title · retained in its source language

