LuxGo Architecture

Understand the internal architecture and components of LuxGo, the official Lux node implementation.

LuxGo is the official Go implementation of an Lux node. It powers the Primary Network (P/C/X) and any Lux L1s you launch, delivering high throughput and sub-second probabilistic finality.

What is LuxGo?

LuxGo is a full-node implementation that:

  • Validates transactions across the Primary Network (Platform-Chain, LUExchange-Chain, Exchange-Chain)
  • Participates in consensus using Lux's Snow* family of protocols
  • Serves API requests for wallets, dApps, and other clients
  • Supports Lux L1s (blockchains validated by Subnets) for custom networks

LuxGo is written in Go and is designed to be modular, allowing developers to build custom Virtual Machines (VMs) that define their own blockchain logic.

Execution at a glance

  • Networking: Custom P2P stack with mutual TLS (staking certs), throttling, peer scoring, and chain-aware gossip.
  • Consensus engines: Snowman/Snowman++ for all Primary Network chains (P/C/X post-Cortina). The legacy Lux DAG engine exists but is unused.
  • VMs: PlatformVM (Platform-Chain), Coreth (LUExchange-Chain), XVM (Exchange-Chain), plus pluggable/rpcchainvm VMs for custom L1s.
  • Chain manager: Boots P/C/X, creates new chains on request, routes consensus messages.
  • APIs: HTTP/WS via /ext/*, with health/metrics, admin/info, and per-chain RPCs.
  • Storage: LevelDB (default) or PebbleDB, shared atomic UTXO memory for cross-chain transfers, optional indexer.

Core Components

ComponentDescription
Network LayerP2P networking for peer discovery, message routing, and validator communication
Chain ManagerOrchestrates blockchain lifecycle, bootstrapping, and state synchronization
Consensus EnginesSnowman/Snowman++ for all Primary Network chains and most L1s
Virtual MachinesPlatformVM, Coreth, XVM, and custom VMs (native Go or rpcchainvm)
API ServerHTTP/HTTPS endpoints for interacting with the node
DatabasePersistent storage using LevelDB (default) or PebbleDB; shared atomic memory

Primary Network Chains

LuxGo validates three chains on the Primary Network:

Key Design Principles

Modularity

LuxGo separates concerns into distinct layers:

  • Consensus is decoupled from application logic
  • VMs are pluggable and can be developed independently
  • Networking is abstracted from chain-specific operations

Extensibility

  • Custom VMs can be loaded as plugins (native) or via rpcchainvm (any language)
  • Lux L1s can run any VM that implements the required interface
  • Chain configurations and upgrades can be customized per-network/chain

Performance

  • Sub-second finality through probabilistic consensus
  • Parallel transaction processing across independent chains
  • State sync and Snowman++ proposer windows to reduce contention and bootstrap faster

Next Steps

Is this guide helpful?