For the complete documentation index, see llms.txt. This page is also available as Markdown.

Smart contracts

Who this is for: developers writing and deploying Solidity contracts on Lumia. By the end of this page you'll know which tools are supported and where each task guide in this subsection lives.

Prerequisites: a wallet funded on Beam testnet. See Accounts & Wallets on Lumia and Get testnet tokens.

What's different from Ethereum

Lumia is an EVM-equivalent zkEVM L2: standard Solidity compiles and runs as-is, and standard Ethereum tooling points at Lumia the same way it would at any other EVM chain. You change the network configuration, not your contracts or your workflow. A small number of opcodes behave differently or are unsupported under the zkEVM's proving constraints; see EVM differences on Lumia before you rely on anything unusual (precompiles, specific hash opcodes) in a contract you intend to deploy here.

Supported tooling

Hardhat and Truffle both deploy and verify a contract on Lumia the same way: point their standard network config at Lumia's RPC and chain ID, then run the same commands you would on any other EVM chain.

Scaffolded with @nomicfoundation/hardhat-toolbox (bundles ethers v6, chai matchers, gas reporter).

Signs transactions through @truffle/hdwallet-provider.

Foundry: standard forge create/cast pointed at Lumia's RPC works the same way it does for any other EVM chain.

From local project to a verified contract

The diagram below shows the mechanism every deploy and verify guide in this section walks you through: a local project submits a transaction through an RPC endpoint to the network, and a separate later step publishes the source code on the explorer.

Task guides in this section

If you haven't deployed anything on Lumia yet, Quickstart: your first contract on Lumia walks the whole path (wallet, funds, deploy, verify, interact) in one guide.

Last updated

Was this helpful?