Key Components
Common Components
- User: The EOA or contract initiating or receiving cross-chain transfers.
- $M Token: The native ERC-20 compliant token contract deployed on Ethereum.
- Wrapped $M / Extensions: ERC-20 wrappers for $M that must implement
wrapandunwrapfunctions. HubPortal(Ethereum): Manages locking/releasing of native $M and propagates metadata.SpokePortal(Spoke Chains): Manages minting/burning of the Spoke chain's $M representation and receives metadata.
M Portal (Wormhole) Specific Components
- Wormhole NTT Framework: The underlying technology.
HubPortalandSpokePortalinherit from itsNttManagercontract. - Wormhole Transceiver: A Wormhole contract on each chain that
NttManageruses to send/receive low-level messages. - Wormhole Core / Guardians / Relayers: The fundamental Wormhole infrastructure that validates and delivers messages (VAAs).
MerkleTreeBuilder.sol: A contract used on the Hub to generate Merkle roots for propagating large datasets (like earner lists) efficiently to non-EVM chains like Solana.
M Portal Lite (Hyperlane) Specific Components
IBridge.sol: A generic interface that decouples the Portal logic from the underlying bridge technology.HyperlaneBridge.sol: The implementation ofIBridgethat interacts with the Hyperlane protocol (IMailbox) to send and receive messages.- Hyperlane Mailbox / Relayers: The core Hyperlane infrastructure for message dispatch, security, and delivery.
- Upgradeable Contracts:
HubPortalandSpokePortalare built using the OpenZeppelin Upgrades pattern, allowing for proxy-based upgrades.

