Arc is an EVM-compatible Layer-1 blockchain targeting the Prague hard fork. Solidity, Hardhat, Foundry, Viem, and standard Ethereum wallets work without modification. You can deploy existing smart contracts, connect familiar development tools, and interact with Arc the same way you would with Ethereum. While the execution environment mirrors Ethereum’s, Arc’s stablecoin-native design, deterministic finality, and stable fee model (see also the gas and fees reference) introduce differences that are important to understand before you start building.Documentation Index
Fetch the complete documentation index at: https://docs.arc.io/llms.txt
Use this file to discover all available pages before exploring further.
Key differences from Ethereum
The table below summarizes the areas where Arc’s behavior diverges from Ethereum mainnet.| Area | Ethereum | Arc |
|---|---|---|
| Native token | ETH, volatile pricing | USDC, stable pricing with 18 decimals for gas |
| Fee market | EIP-1559 base fee per block | EWMA smoothing with bounded base fee |
| Finality | Probabilistic (12-15 min) | Deterministic, <1 s |
| Consensus | Proof-of-Stake (slot/epoch model) | Malachite BFT, permissioned validators |
| Block timestamps | Derived from slots and epochs | Wall-clock time; sub-second blocks may share timestamps |
SELFDESTRUCT | Allowed with value transfers to self | Not allowed during deployment |
PARENT_BEACON_BLOCK_ROOT | SSZ root of parent beacon block | keccak256(RLP(header)); no beacon chain |
PREV_RANDAO | Randomness mix of proposer reveals | Always 0; not usable for randomness |
| USDC blocklist handling | Runtime revert on transfer | Pre-mempool rejection and runtime checks |
| EIP-4844 blobs | Supported post-Dencun | Disabled |
- Gas denomination: Gas is priced in USDC (18 decimals), not ETH. Hardcoded gas-price assumptions based on ETH economics do not apply.
- Timestamp behavior: Sub-second blocks may share the same
block.timestamp. Contracts that rely on strictly increasing timestamps between blocks need adjustment. - No usable randomness:
PREV_RANDAOalways returns0. Use an offchain oracle or verifiable random function (VRF) instead.
USDC dual-interface model
Arc uses USDC as its native gas token. Because USDC also needs to function as a standard ERC-20 token (the Ethereum token standard for fungible assets like stablecoins) for application-level transfers, Arc exposes two interfaces for the same underlying asset:| Interface | Decimals | Purpose |
|---|---|---|
| Native | 18 | Gas accounting, native sends, and msg.value |
| ERC-20 | 6 | Application-level transfers, approvals, and allowances |
For detailed integration guidance, common pitfalls, and per-use-case
recommendations for working with Arc’s EVM differences, see the full EVM
compatibility reference.