Move-VM rollup network bringing Aptos/Sui-style Move execution to Ethereum — the M2 zk-rollup and Movement SDK let teams deploy Move-based L2/L3s with Celestia DA and Ethereum settlement.
- 01Move-VM smart contracts on Ethereum
- 02Aptos/Sui Move code reuse
- 03Move-based L2/L3 rollups
- 04Celestia-DA rollups
- 05high-throughput app-chains with Move resource model
- curl -fsSL https://raw.githubusercontent.com/movementlabsxyz/movement/main/scripts/install.sh | bash
| Variable | Scope | Description |
|---|---|---|
| MOVEMENT_RPC_URL | Client | RPC endpoint for the Movement network (M2 / MEVM rollup) — see docs for current mainnet/testnet URLs. |
| MOVEMENT_CHAIN_ID | Client | Chain ID for the target Movement rollup. |
| MOVEMENT_FAUCET_URL | Client | Testnet faucet URL for funding Move accounts during development. |
Use Movement to ship a Move-VM rollup. Write contracts in Move (Aptos-flavored modules with resources and `entry` functions) using the Movement CLI; deploy to the M2 zk-rollup or a custom Movement-SDK chain that settles to Ethereum and uses Celestia for DA. For client integration use the Aptos-compatible REST/JSON-RPC plus `@aptos-labs/ts-sdk` (or the Movement SDK fork) to build, sign, and submit transactions; for EVM interop wire the MEVM bridge or a cross-VM messaging layer like LayerZero/Wormhole.
- ⚑Move VM is not EVM — Solidity contracts, EVM tooling (Hardhat/Foundry), and ABI-based wallet UX do not work directly; teams must learn Move's resource and ability model.
- ⚑Wallet support is sparse: most EVM wallets cannot sign Move transactions; use Movement-supported wallets (Razor, Nightly, Petra-compatible) and disclose this to users.
- ⚑Gas is paid in the rollup's MOVE token, not ETH — fund operator and user wallets accordingly and budget for cross-chain top-ups.
- ⚑DA inclusion latency tracks Celestia (~12s) — your Movement rollup's soft-finality cannot beat that.
- ⚑Settlement to Ethereum is via zk-proofs (M2) but withdrawals still depend on proof-publication cadence; treat L1 finality as minutes-to-hours, not seconds.
- ⚑Sequencer is centralized at launch; decentralization is roadmap — disclose liveness/censorship trust assumptions.
- ⚑Move bytecode and account model differ subtly between Aptos, Sui, and Movement — confirm which dialect target before porting code, since not every Aptos module compiles on Movement unchanged.