R5 Components
The R5 Protocol comprises several essential components that work together to power the R5 Blockchain. This guide provides a technical overview of each component and explains how they interconnect to deliver a secure, high-performance blockchain environment.
The R5 Core Protocol
The R5 Core Protocol is the fundamental architecture that enables client software to connect and interact with the R5 Blockchain. It defines the rules, standards, and network architecture that allow nodes to communicate and function correctly. R5 Labs develops and maintains a Golang client named r5-core, but alternative clients can be built in various other programming languages, such as Rust, C++, or even JavaScript.
R5 Networks
R5 supports multiple networks, each serving a distinct purpose. The main types of networks are:
Mainnet
Also known as the R5 Blockchain, the mainnet is the decentralised public ledger where production‑ready protocols, applications, tokens, and NFTs are maintained. This is the network where R5 Coins are transacted between wallets.
Testnet
Maintained by R5 Labs, the Testnet is the final testing ground for major protocol updates before they are deployed to the mainnet. It is a stable and consistent environment that allows for thorough testing of network and protocol upgrades.
Devnet
The Devnet is an unstable network used by the R5 Labs team to test and deploy network updates and upgrades. It is not recommended for most application‑layer tests or deployments, as the network may experience breakages, history wipeouts, and other issues. However, it gives developers the chance to optimise their applications against the latest planned features of R5.
Local Networks
You can run an R5 client locally to create your own private network. Developing on a closed, local network provides an optimised workflow and an environment that is fully under your control.
The R5 Blockchain
The R5 Blockchain is the main public, decentralised instance of the R5 Core Protocol. It is defined as a Layer 1 blockchain and is operated by hundreds of nodes and miners across the world. The network reaches consensus using its own native coin—the R5 Coin—and is designed to ensure security and performance.
R5 Coin
R5 Coin is the native token of the R5 Blockchain. It can be divided up to 18 decimal places and is used to pay transaction fees whenever users interact with the blockchain. For detailed information on tokenomics, please refer to our dedicated tokenomics page.
Smart Contracts
R5 smart contracts are fully compatible with the EVM and can be developed using Solidity or Vyper. You can compile your contracts into EVM bytecode and deploy them on the R5 Blockchain. Although most tools and IDEs are compatible, some adjustments or additional parametrisation may be required. If you encounter issues with contract deployment, direct support from the R5 Labs engineering team is available.
Miners
Miners are crucial for the functioning and security of the network. They perform the proof‑of‑work calculations required to validate new blocks, expending energy and computational resources. New R5 Coins are created and rewarded to miners for each new block added to the network. This system establishes a measurable cost for coin creation, which helps maintain inherent value.
Nodes
Nodes are the backbone of the R5 Blockchain. There are three primary types of nodes:
Archive Nodes: Store the full history of the blockchain from the genesis block. Archive nodes are critical for decentralisation and can be used in development environments or by operators who need access to the complete network history.
Full Nodes (Snap Sync): Full nodes store the headers and bodies of all blocks since genesis, but do not retain all historical state changes—they only keep the latest state snapshot, with older states pruned.
Light Nodes: Light nodes store only the block headers without the transaction data or state. They are suitable for low‑resource devices that still need to participate in the network and access key information.
Last updated