awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
ethereum avatar

ethereum/go-ethereum

0
View on GitHub↗
51,178 stars·21,922 forks·Go·LGPL-3.0·18 viewsgeth.ethereum.org↗

Go Ethereum

Geth is a comprehensive execution client for the Ethereum network, serving as a foundational node implementation that processes transactions, maintains the distributed ledger state, and participates in peer-to-peer consensus. It provides a robust infrastructure for synchronizing, validating, and serving blockchain data, utilizing a persistent Merkle Patricia Trie database to ensure the cryptographic integrity of historical records. As a sandboxed smart contract runtime, it executes bytecode according to deterministic protocol rules, enabling the deployment and interaction of decentralized applications.

What distinguishes Geth is its extensive diagnostic and extensibility framework, which allows developers to inspect transaction execution at the opcode level through a sophisticated tracing engine. Users can implement custom tracers, perform deep protocol analysis, and register specialized networking logic or RPC methods to tailor the node to specific requirements. The project also includes a modular container architecture that supports embedding the node into custom applications, alongside secure account management tools that facilitate transaction signing and authorization.

Beyond its core execution capabilities, Geth provides a versatile suite of development and administrative tools. It supports various synchronization strategies, including full node verification and snapshot restoration, and offers a multi-protocol transport layer for external application integration. The platform includes built-in support for private network orchestration, allowing for the configuration of custom genesis blocks and network parameters, as well as comprehensive observability frameworks for monitoring node health and performance metrics.

The project is managed through a unified command-line interface and provides extensive documentation for configuring node behavior, managing account lifecycles, and automating tasks via an interactive JavaScript console.

Features

  • Smart Contract Development Frameworks - Processes transactions, maintains ledger state, and participates in network consensus.
  • Full Node Synchronization - Verifies all state transitions by re-executing every transaction from the genesis block.
  • State Databases - Maintains the global blockchain state using a persistent key-value structure for efficient cryptographic verification.
  • Blockchain Nodes - Runs and maintains participant nodes to synchronize, validate, and serve data within decentralized peer-to-peer networks.
  • Node Synchronization - Maintains network alignment by processing incoming blocks and applying fork choice rules.
  • Transaction Managers - Enables the signing and submission of transactions to the network through the client interface.
  • Runtime Environments - Processes smart contract bytecode and manages state transitions according to deterministic protocol rules.
  • Distributed Ledger Nodes - Synchronizes blockchain data and provides interfaces for external application interaction.
  • Node Orchestrators - Orchestrates peer-to-peer networking, state synchronization, and lifecycle management for distributed ledger operations.
  • Client Interfaces - Provides a client interface for distributed ledger interaction via IPC or network URLs.
  • Peer-to-Peer Networking Extensions - Geth enables the implementation of application-specific peer-to-peer communication protocols by registering custom networking logic alongside standard protocols.
  • Account Management - Manages cryptographic accounts and signs transactions through an interface requiring explicit user confirmation for sensitive operations.
  • Blockchain State Snapshots - Geth snapshots the state of accounts and storage slots required to execute a transaction before any changes are applied to the network.
  • Snapshot Synchronization - Downloads recent state snapshots to enable fast synchronization from network checkpoints.
  • Interactive Consoles - Offers an interactive shell for live process communication and transaction execution.
  • Discovery Protocols - Enables nodes to locate and connect to network participants without centralized directory services.
  • DNS Discovery Protocols - Geth signs a list of network nodes using a cryptographic key pair to create a verifiable DNS tree structure for reliable node discovery.
  • Peer Discovery - Resolves node records in distributed hash tables to maintain and update network peer sets.
  • Transaction Subscriptions - Provides real-time tracking of pending transaction hashes and chain reorganization events via subscription interfaces.
  • Transaction Signing - Provides secure transaction signing by requiring passphrases or cached private keys for authorized operations.
  • Embedded Runtimes - Allows building custom applications by embedding the node container and its services.
  • Genesis Configuration - Defines the starting state and protocol parameters for private network initialization.
  • Execution Tracers - Provides diagnostic hooks into virtual machine execution to capture opcode-level metadata and transaction flow for debugging.
  • HTTP RPC Transports - Provides an HTTP server for JSON-RPC requests with configurable security and CORS.
  • Databases and Data - Official implementation of the Ethereum protocol in Go.
  • Databases & Data - Official implementation of the Ethereum protocol.
  • Blockchain - Official implementation of the Ethereum client.
  • Blockchain and Finance - Ethereum protocol implementation.
  • Light Client Synchronization - Connects to beacon nodes to verify chain state using finalized epoch checkpoints.
  • RPC Interfaces - Exposes node functionality to external applications via HTTP, WebSockets, and local IPC sockets.
  • Instrumentation & Hooking - Geth enables high-performance tracing by registering hooks that execute directly within the node, avoiding the overhead of script interpretation during transaction execution.
  • Inter-Process Communication Utilities - Enables local inter-process communication via domain sockets for secure RPC access.
  • Diagnostic Tools - Includes administrative functions to perform node diagnostics and track performance metrics.
  • Performance Monitoring - Integrates time-series databases and visualization tools to provide comprehensive real-time node performance monitoring.
  • RPC Interface Extensions - Geth extends the interface by registering custom namespaces and methods, supporting both standard request-response calls and real-time WebSocket-based subscriptions.
  • Smart Contract Environments - Supports building, testing, and deploying decentralized applications by interacting with virtual machine environments.
  • Archive Storage - Keeps historical state data using path-based storage to enable efficient disk usage and long-term state access.
  • State Pruning - Reclaims disk space by removing obsolete historical state data after snapshot generation.
  • Blockchain Development Toolkits - Provides command-line utilities for account management, contract deployment, and network simulation.
  • Contract Bindings - Transforms contract definitions into native language interfaces for seamless interaction with decentralized applications.
  • Node Management Interfaces - Provides JSON-RPC and shell interfaces for direct node management.
  • Network Configurations - Allows generation of custom genesis block configurations and protocol settings.
  • System Debugging - Geth identifies performance bottlenecks and execution patterns within smart contracts by counting unigrams, bigrams, and trigrams across executed instructions.
  • Keystore Management - Stores account keys securely on disk using encrypted files with configurable security modes.
  • Diagnostic Tracing Tools - Geth provides diagnostic tools to generate detailed stack traces for running processes, allowing developers to examine execution states and identify errors by filtering output by package.
  • Metrics Collection - Collects raw telemetry data from client endpoints and applies recording rules to precompute complex performance metrics.
  • RPC Integration Interfaces - Connects applications to blockchain networks via secure RPC interfaces for account management and transaction signing.
  • Block Mining - Enables local block production and signing for private network operation.
  • Database Engines - Allows selecting a preferred key-value storage engine during synchronization to optimize data storage and retrieval.
  • Standalone Light Clients - Runs as an independent process to provide authenticated ledger access to execution clients.
  • Binding Generators - Generates type-safe packages from contract definitions for native interaction within application code.
  • Network Management Utilities - Geth provides command-line utilities to manage node discovery, sign DNS trees, and generate cryptographic keys for network operations.
  • Scripting Environments - Geth supports remote JavaScript command execution via the command line, enabling automated task management without requiring an active interactive session.
  • WebSocket RPC Interfaces - Enables bidirectional JSON-RPC communication over WebSockets for real-time event subscriptions and access-controlled requests.
  • Secure Vaults - Creates a protected vault for storing keystore passwords and signing rules by providing a master seed.
  • Protocol Analysis Tools - Inspects transaction execution, opcode behavior, and state transitions using deep diagnostic tools and custom tracing frameworks.
  • Transaction Tracers - Collects function selectors and call data sizes to analyze contract interaction patterns during transaction execution.
  • Testing Frameworks - Executes network protocol tests against running nodes to verify compliance with standard specifications.
  • Test Infrastructure - Provides a controlled environment for testing contract deployments and interactions without requiring a live network.

Star history

Star history chart for ethereum/go-ethereumStar history chart for ethereum/go-ethereum

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Go Ethereum

Similar open-source projects, ranked by how many features they share with Go Ethereum.
  • ethereumbook/ethereumbookethereumbook avatar

    ethereumbook/ethereumbook

    21,521View on GitHub↗

    This project serves as a comprehensive technical reference and educational platform for the Ethereum ecosystem. It provides a deep dive into the fundamental architecture of decentralized ledger systems, covering the core mechanisms that enable trustless state transitions, cryptographic security, and network consensus. The documentation distinguishes itself by bridging high-level conceptual frameworks with practical implementation details. It details the lifecycle of smart contract development, from source code compilation and bytecode analysis to deployment and interaction patterns. Furthermo

    blockchainbookdapp
    View on GitHub↗21,521
  • mystenlabs/suiMystenLabs avatar

    MystenLabs/sui

    7,612View on GitHub↗

    Sui is a blockchain platform featuring an object-centric state model and resource-oriented smart contracts. It utilizes parallel transaction execution to increase network throughput and supports programmable transaction blocks that bundle multiple operations into single atomic units. The platform distinguishes itself with a capability-based access control system and zero-knowledge login mechanisms, enabling users to authenticate via identity providers without seed phrases. It also implements deterministic object addressing to allow predictable state lookups and supports the creation of soulbo

    Rustblockchaindistributed-ledger-technologymove
    View on GitHub↗7,612
  • stellar/stellar-corestellar avatar

    stellar/stellar-core

    3,269View on GitHub↗

    Stellar Core is the primary software implementation of the Stellar blockchain network, serving as a distributed ledger and a Federated Byzantine Agreement system. It functions as a core node that maintains the shared state of the network and provides a runtime environment for executing WebAssembly smart contracts. The project enables the creation and management of digital assets, including the implementation of decentralized exchanges through distributed orderbooks and automated liquidity pools. It facilitates cross-border payment settlement by routing assets via path payments and bridging di

    C++
    View on GitHub↗3,269
  • diem/diemdiem avatar

    diem/diem

    16,678View on GitHub↗

    Diem is a distributed ledger technology platform designed for the development of decentralized applications and the execution of programmable financial transactions. It provides a comprehensive framework for operating validator nodes that maintain ledger integrity through a Byzantine fault-tolerant consensus protocol, ensuring consistent state updates across a distributed network of participants. The platform distinguishes itself through a modular node architecture that decouples consensus, execution, and storage to facilitate scalability and maintenance. It utilizes a resource-oriented virtu

    Rustblockchain
    View on GitHub↗16,678
See all 30 alternatives to Go Ethereum→

Frequently asked questions

What does ethereum/go-ethereum do?

Geth is a comprehensive execution client for the Ethereum network, serving as a foundational node implementation that processes transactions, maintains the distributed ledger state, and participates in peer-to-peer consensus. It provides a robust infrastructure for synchronizing, validating, and serving blockchain data, utilizing a persistent Merkle Patricia Trie database to ensure the cryptographic integrity of historical records. As a sandboxed smart contract runtime, it…

What are the main features of ethereum/go-ethereum?

The main features of ethereum/go-ethereum are: Smart Contract Development Frameworks, Full Node Synchronization, State Databases, Blockchain Nodes, Node Synchronization, Transaction Managers, Runtime Environments, Distributed Ledger Nodes.

What are some open-source alternatives to ethereum/go-ethereum?

Open-source alternatives to ethereum/go-ethereum include: ethereumbook/ethereumbook — This project serves as a comprehensive technical reference and educational platform for the Ethereum ecosystem. It… mystenlabs/sui — Sui is a blockchain platform featuring an object-centric state model and resource-oriented smart contracts. It… stellar/stellar-core — Stellar Core is the primary software implementation of the Stellar blockchain network, serving as a distributed ledger… diem/diem — Diem is a distributed ledger technology platform designed for the development of decentralized applications and the… web3/web3.js — web3.js is a comprehensive TypeScript library designed to facilitate interaction with Ethereum-compatible blockchain… shardeum/shardeum — Shardeum is an autoscaling blockchain infrastructure designed to distribute network workloads across multiple shards…