Learn about the differences between node clients on EmpoorioChain and Ethereum.
Table of Contents
Ethereum and EmpoorioChain take different approaches to node software. Ethereum, since the Merge, requires operators to run two separate clients side by side; EmpoorioChain, as a Substrate chain, ships a single node binary that handles networking, execution, and consensus together.
Since transitioning to PoS, Ethereum splits validator node software into two cooperating client types. Execution Layer (EL) clients receive transactions, execute them on the EVM, and maintain state. Consensus Layer (CL) clients run the PoS consensus protocol and reach agreement based on data from the execution client. A validator node runs one of each, paired over a local API.
Ethereum execution clients include:
| Client | Language |
| Geth | Golang |
| Besu | Java |
| Nethermind | C# .NET |
| Erigon | Go |
| Reth | Rust |
Ethereum consensus clients include:
| Client | Language |
| Lighthouse | Rust |
| Lodestar | TypeScript |
| Nimbus | Nim |
| Prysm | Go |
| Teku | Java |
EmpoorioChain, being a single Substrate-based node, does not split into execution/consensus clients:
| Client | Language |
| empoorio-node (the reference client) | Rust |
Substrate's architecture bundles networking (libp2p), block execution, and the consensus engines (Aura + GRANDPA) into one binary built from the same runtime that also defines the chain's pallets. There is currently one production client implementation; a diverse multi-client ecosystem like Ethereum's is a longer-term ecosystem goal rather than something already in place.
Ethereum classifies nodes into three types based on the scope of data storage and participation in consensus:
EmpoorioChain, as a Substrate chain, divides nodes primarily by role rather than by storage depth:
In short:
| Node Type | Ethereum | EmpoorioChain |
| Stores all history | Archive Node | Full node, `--pruning archive` |
| Produces/finalizes blocks | Full Node (EL+CL pair) | Validator node (Aura + GRANDPA) |
| Serves RPC, doesn't validate | Light Node | RPC node / light client |
EmpoorioChain exposes standard Substrate JSON-RPC and WebSocket endpoints, compatible with polkadot.js/@polkadot/api tooling, plus an Ethereum-JSON-RPC-compatible endpoint through its EVM pallet for Solidity tooling (Hardhat, Foundry, ethers.js). See the RPC page for current testnet endpoints.
EVM TO EMPOORIOCHAIN