xOneC is the native C++ implementation in the xOne family. Its focus is a native implementation of the XDC execution client.
What it is
- Runtime: native C++23
- Execution: its own C++ EVM interpreter
- Storage: libmdbx
- Consensus: XDC consensus modules
- License: MIT
Why a C++ client
Writing the EVM interpreter and consensus modules directly gives a codebase with no borrowed execution engine, and a different set of failure modes from the other clients. That independence is the point: disagreement between implementations is how protocol bugs get found.
How to build it
The repository is currently private, so you need access first. The toolchain is clang 19+, clang-format, clang-tidy, CMake 3.28+, Ninja, and Python 3.
git clone https://github.com/XDCIndia/xOneC.git
cd xOneC
cmake --preset dev
cmake --build --preset dev
build/dev/xonec --version
The presets are defined in CMakePresets.json.
Source
This article describes the source and evidence at its review date. Check the linked repository for current implementation and qualification status.
Explore the engineering evidence