Skip to main content

On-Chain System

Mantle Network's on-chain module contains a series of smart contracts that run on the blockchain to ensure decentralized and reliable execution. These contracts are responsible for handling the logic of various dApps interacting with the blockchain, as well as the interaction of the off-chain system with the on-chain system, including asset transfers, asset swaps, and so on.

Key L1 Smart Contracts

Introduction

L1CrossDomainMessenger

High-level interface for sending messages to and receiving messages from Mantle Network (from L1 to L2).

L1StandardBridge

Standardized contract for transferring ERC20 tokens to/from Mantle Network

L1ERC721Bridge / L1ERC721BridgeProxy

Standardized contract or proxy contract for transferring ERC721 tokens to/from Mantle Network.

L2OutputOracle / L2OutputOracleProxy

Stores commitments to the state of Mantle Network, which can be used by contracts on L1 to access the L2 state

OptimismMintableERC20Factory / OptimismMintableERC20FactoryProxy

Factory contract or proxy factory contract for minting ERC20 tokens.

OptimismPortal / OptimismPortalProxy

Low-level message-passing interface.

ProxyAdmin

Admin contract for the contracts, is the owner of all the proxy contracts. It can be used to upgrade the most system contracts in Mantle.

Proxy__BVM_L1CrossDomainMessenger

This contract is a proxy for the L1CrossDomainMessenger contract on the L2, which can be used to the interaction with the L2 contract from L1.

Proxy__BVM_L1StandardBridge

This contract is a proxy for the L1StandardBridge contract on the L2, which can be used to the interaction with the L2 bridge from L1.

SystemConfig / SystemConfigProxy

This is a system contract that stores the configuration values for the on-chain system.