Clients
Blockchains can support multiple software implementations, or clients, that connect users to a blockchain network. Clients are developed to be compatible with specific protocols and serve different purposes, for example, allowing for faster transactions or managing smart contracts in an advanced manner. Some clients can also be optimized for different consensus algorithms. You can learn which clients are available for the most popular protocols on Chainstack below.
Ethereum clients
Consensus layer
- Nimbus — the Nim implementation of the Ethereum Beacon Chain client.
Execution layer
Ethereum node can have one of the following implementations of the execution layer client:
- Geth — the Go Ethereum implementation. It's bigger in size and can be interacted with by using Geth JSON-RPC methods.
To get the Geth client on your node, you must deploy a dedicated node in the full or archive mode. - Erigon — the Erigon implementation. It's smaller in size and can be interacted with by using Erigon RPC methods.
To get the Erigon client on your node, you must deploy an elastic node in the archive mode or a dedicated node in the archive mode. - Reth — available as a dedicated node.
Polygon clients
Polygon node can have one of the following client implementations:
- Bor — the native Polygon client. It can be interacted with by using JSON-RPC methods.
To get the Bor client on your elastic or dedicated node, you must deploy it in the full mode. - Erigon — the Erigon implementation. It can be interacted with by using Erigon RPC methods.
To get the Erigon client on your elastic or dedicated node, you must deploy it in the archive mode.
BNB Smart Chain clients
BNB Smart Chain node can have one of the following client implementations:
- Geth — the Go Ethereum implementation. It's bigger in size and can be interacted with by using Geth JSON-RPC methods.
To get the Geth client on your elastic or dedicated node, you must deploy in the full mode. - Erigon — the Erigon implementation. It's smaller in size and can be interacted with by using Erigon RPC methods.
To get the Erigon client on your elastic or dedicated node, you must deploy it in the archive mode.
Base client
The client is op-geth.
Avalanche client
AvalancheGo is the node implementation for the Avalanche network in Golang. You can find API documentation in the Chainstack Avalanche API reference.
Arbitrum client
Stylus is supported
Arbitrum nodes on Chainstack support Stylus.
Nitro is the official node for the Arbitrum protocol. It is a fully integrated, complete layer 2 optimistic rollup system that includes fraud proofs, the sequencer, token bridges, advanced calldata compression, and more. For available methods, see Chainstack Arbitrum API reference and the official Arbitrum documentation.
zkSync Era
The client is zkSync Era.
Polygon zkEVM client
zkEVM Node is a Go implementation of a node that operates the Polygon zkEVM network. For available methods, see Chainstack zkEVM API reference and the official zkEVM documentation.
Optimism client
Global elastic nodes run op-erigon.
Regional elastic nodes run op-geth.
Aurora client
Aurora operates on top of NEAR. It is EVM-compatible, and all its available JSON-RPC methods can be found in the official Aurora documentation and GitHub repository.
Solana client
Solana — Solana's official client is developed in Rust. JSON-RPC methods are available and can be found in the official Solana documentation. For JavaScript applications, use the @solana/web3.js library as a convenient interface for interacting with a Solana node using RPC methods.
Scroll
The client is Geth-based.
Ronin client
Go Ronin — the Go Ethereum implementation that can be interacted with by using Geth JSON-RPC methods.
Aptos client
Aptos-core is the official client for the Aptos protocol. Developers can interact with Aptos via its various SDKs, including the TypeScript SDK, Python SDK, Rust SDK, and Unity SDK, or through its REST API.
Oasis Saphire client
Oasis-node is written in Go and serves as both a consensus and execution layer client. As it is EVM-compatible, it can be interacted with using the standard JSON-RPC API.
Gnosis clients
Consensus layer
Lighthouse — the Rust implementation of the Beacon Chain client.
Execution layer
Nethermind — the Nethermind implementation. See the JSON-RPC methods reference in the official Nethermind documentation.
Cronos client
Cronos is a fully EVM-compatible chain. Developers can connect to it through the standard JSON-RPC API or via libraries like ethers.js, web3.js, and web3.py.
Fantom client
Opera is the mainnet for Fantom and an EVM-compatible node client for Fantom's network. It can be accessed via standard JSON-RPC methods or by using libraries like Fantom ClientJS Utils.
Starknet client
Pathfinder is the node implementation for the Starknet protocol. It supports version v0.2.1
of the Starknet JSON-RPC specification with some minor differences.
Harmony
The client is Geth-based.
Tezos client
Octez is the official node implementation for Tezos. See the JSON-RPC specification for Tezos in their official documentation.
Bitcoin client
Bitcoin Core connects to the Bitcoin peer-to-peer network to download and validate blocks and transactions. See available JSON-RPC API methods in the Bitcoin Postman collection.
Updated about 2 months ago