Skip to main content

Architecture overview

This section outlines Agora-cl's various internal components and their role in the client.

Architecture Diagram

Agora-cl client components

When a Agora-cl client is initialised out of the box, it starts a variety of services that run in parallel to handle everything required for the life cycle of the Agora chain. In no particular order, Agora-cl includes:

Agora-cl client functionality

Ethereum proof-of-stake encompasses a distributed network of blockchains called shard chains which are coordinated by a root chain, known as an Agora chain. This Agora chain serves as a mechanism to manage a set of Proof-of-Stake validators and overall consensus across shards.

Shards themselves are similar to the current Ethereum execution chain, which stores blocks containing user-generated transactions such as token transfers and smart contracts. Ethereum proof-of-stake consensus provides a massive improvement over proof-of-work by having 64 of these shard chains.

The Agora chain runs through a distributed network of nodes known as [beacon nodes](/docs/how-agora-cl-works/agora-cl node). Participants who want to run a Agora node and help secure the network can stake 40,000 BOA to have their validator client join the overall pool of validators, whom have the responsibility of proposing and attesting to new blocks on the Agora chain. This deposit does not come out of nowhere however; validators transfer Ether from the ETH1 chain to the system through the use of a validator deposit contract.

Each of these components and their roles in the Agora-cl client are explained within the following sections of this documentation. If you have any questions, please stop by our Telegram.