OpenViSTAI · Agents · Blockchain · Crypto
Menu
Infrastructure

Shinode

Shinode is a lightweight, self-hosted Ethereum history node written in Rust. It synchronizes headers, transactions, receipts and logs from the Ethereum peer-to-peer network and serves JSON-RPC requests, including eth_getLogs, without an EVM or state trie.

Independent OpenViST project profile, based on linked sources.

Shinode — OpenViST project profile in Infrastructure.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use Shinode when an indexer needs Ethereum Mainnet event logs from a self-hosted JSON-RPC service and does not depend on contract calls or other state queries.

Who it is for

  • Developers building Ethereum event indexers.
  • Operators who want a locally hosted source of Ethereum logs for applications using eth_getLogs.

Documented uses

  • Sync Ethereum Mainnet history from peer-to-peer peers.
  • Serve filtered event-log queries by block range, address and topics.
  • Provide block data by number, including transaction hashes.
  • Resume syncing from persisted checkpoints after restart.
Before you choose

Requirements & limits

The project is available as an open-source GitHub repository under the Apache-2.0 license. The README lists pre-built binaries for Linux x86_64 and macOS ARM and x86_64, and a Rust/C toolchain route for building from source.

  • Shinode does not include an EVM or state trie, so it cannot serve eth_call, traces, balances, storage or contract reads.
  • The README describes Ethereum Mainnet support; it says L2 receipts are not available over P2P.
  • Peer-fetched data is not proof-validated, according to the README.
  • Historical P2P data may thin out over time, as noted in the project documentation.
  • Ponder is supported in event-only mode; indexing code using context.client.readContract() requires a full node for eth_call.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Build and start Shinode from source

Build Shinode locally and start its documented default sync from block 10,000,000.

Before you start

  • Rust and a C toolchain; on Ubuntu or Debian, the README names build-essential.
  • A cloned copy of the Shinode repository.

Steps

  1. Clone the repository and change into its directory.

  2. Build a release binary with cargo build --release.

  3. Start the node with cargo run --release; the README says this syncs from block 10M to head.

Expected outcome

A locally running Shinode instance starts syncing Ethereum history from the default starting block.

Guide limitations

  • The README warns against production use until the project is fully tested and reviewed.
  • Shinode does not provide eth_call, traces or state queries; it is intended for history and event-log workloads.
  • The README identifies Ethereum Mainnet as the supported network.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
13 October 2026
Original website title
vicnaum/shinode · Official homepage title · retained in its source language