Lumina
Lumina, a Rust implementation of a Celestia light node that runs in the browser (WASM), performing data-availability sampling and direct verification.
CompletedOverview
Equilibrium built Lumina, a Rust implementation of a Celestia light node that runs natively in the browser (compiled to WebAssembly), for Celestia Labs. Lumina lets anyone participate in the Celestia network “with no more effort than opening a URL”, synchronizing with the network, performing Data Availability Sampling (DAS), and directly verifying block correctness, without running a full node.
It was a longer, multi-stage engagement working directly with the client, spanning a Rust RPC client and node components for Celestia and the related LightRay light node, culminating in Lumina. It was delivered and handed over to the Celestia organization (the canonical repo now lives under celestiaorg).
Deliverables
- Lumina: a WASM-friendly Celestia light node in Rust (
celestiaorg/lumina, built atequilibriumco/lumina; live atlumina.rs). - LightRay: a related browser Celestia light node (header synchronization, DAS, fraud-detection service).
- A Rust RPC client and node components for the Celestia network.
- Repository handover to the Celestia organization on completion.
Technical highlights
- A Celestia light node performing Data Availability Sampling: sampling random parts of each block until confident the whole block is available, written in Rust and compiled to WebAssembly to run in the browser.
- Network synchronization, DAS, and direct block verification in one client; the browser deployment removes the operational barrier to running a light node.
- Built across a multi-stage, directly-collaborative engagement with the client (RPC client and nodes, then LightRay, then Lumina), then handed over to the Celestia org.
Status
Completed, delivered and handed over to Celestia. Public and open source
(canonical repo under celestiaorg), with the browser light node live at
lumina.rs.