Ethereum Clients
Consensus Clients
Lighthouse
Lighthouse is the most popular Ethereum consensus client with a focus on security and performance. It is written in Rust - a fast, modern programming language - and maintained by Sigma Prime. It is also fully open-source, licensed under Apache 2.0 and currently used by 38% of the network.
Prysm
Prysm is a full-featured Ethereum consensus client written in Go with a focus on usability, security, and reliability. It is currently used by about 37% of the network.
Teku
Teku is an open source Ethereum consensus client written in Java. It is built by Consensys to meet institutional needs and security requirements. Built mainly for the enterprise world, it features external key management for compatibility with enterprise-grade key stores, metrics and logging and licensed under Apache 2.0. It is currently used by about 17% of the network.
Nimbus
Nimbus is a client for the Ethereum network that is lightweight, secure and easy to use. Its efficiency and low resource consumption allows it to perform well on all kinds of systems where it leaves resources free to perform other tasks, such as running an execution node. It is licensed under Apache 2 and written in Nim, a language with Python-like syntax that compiles to C, and currently used by about 7% of the network.
Lodestar
Lodestar is an open-source consensus client written in Typescript - the world’s most popular programming language - and maintained by ChainSafe Systems. It is designed to be lightweight, allowing it to be run in a feather-light fashion from the browser, without the high storage requirements.
Execution Clients
go-ethereum (Geth)
Geth (go-ethereum) is a Go implementation of Ethereum. Geth was one of the original Ethereum implementations making it the most battle-hardened client with the highest adoption rate. It is open-sourced and licensed under GNU LGPL v3, and supports Linux, Windows, macOS, ARM.
Nethermind
Nethermind is an Ethereum implementation built on .NET. that runs on all major platforms, including Linux, Windows, macOS and ARM. The Nethermind client is made to be adaptable, and supports a range of plugin types: RPC, Block Tree Visitors, Devp2p, State Visitors, Config, TxPool, Tracers and CLI.
Erigon
Erigon comes in third in the list of popular Ethereum clients, with 9.5% market share. It is a fork of Geth written in Go that focuses on speed and disk space savings, by preprocessing data in temporary files before inserting it into the central database for specific tasks. It supports Linux, Windows, macOS and ARM as well.
Hyperledger Besu
Besu is an open source Ethereum client developed under the Apache 2.0 license and written in Java. It runs on public and private networks, and supports common smart contract and dapp development, deployment, and operational use cases such as Truffle, Remix and web3j. It supports Linux, Windows and macOS only.
Nimbus (pre-alpha)
Nimbus is currently developing a client for the execution layer, which could be a pair to its consensus layer client. The client focuses on efficiency and security and strives to be as light-weight as possible.
Reth (pre-alpha)
Reth (or Rust Ethereum) is a new Ethereum full node implementation that is focused on being user-friendly, highly modular, as well as being fast and efficient. It is originally built and driven forward by Paradigm, and is licensed under the Apache and MIT licenses.