Exploring the Movement Blockchain Network: A Hands-On Guide

·

The blockchain space constantly evolves, and discovering new projects can be exciting. One such project is Movement, a modular blockchain network built on the Move programming language. This guide provides a hands-on overview of its testnets and capabilities.

What Is the Movement Network?

Movement is a modular blockchain network and development framework leveraging the Move language. As of its latest developments, it features two testnets: M1 and M2.

Key Features of M1

Key Features of M2

The integration of Move VM with Avalanche’s consensus mechanism enables high-speed parallel processing, reportedly exceeding 140,000 TPS.


Getting Started With M2

For developers familiar with EVM-based chains, experimenting with M2 offers a glimpse into Sui’s ecosystem. Here’s how to set up and deploy a project on M2.

1. Set Up a Sui Wallet

Install the Sui Wallet Chrome extension and create a new wallet. Configure the custom RPC for M2 testnet:

https://devnet.m2.movementlabs.xyz

2. Acquire Test Tokens

Obtain MOV testnet tokens from the official faucet to cover transaction fees.

3. Prepare the Development Environment

Use VS Code with Dev Containers. Pull the Docker image and start the container:

docker run -it -v "$(pwd):/workspace" mvlbs/m1-cli /bin/bash

Create a new Sui Move project within the /workspace directory:

movement sui move new [your-project-name]

4. Write a Move Module

In the /sources directory, create a .move file. For this example, we used a sample NFT contract inspired by Sui’s official documentation.

5. Deploy to M2 Testnet

Run the publish command:

movement sui client publish --gas-budget 20000000

During initial setup, you may encounter prompts to configure the RPC URL and key scheme. However, note that API version mismatches can cause compilation errors. If you encounter issues, consider alternative setup methods.

Troubleshooting Deployment Issues

Using the Dockerized Movement CLI might lead to version conflicts. As a workaround, install Sui CLI locally:

cargo install --locked --git https://github.com/MystenLabs/sui.git --branch testnet sui

Add the M2 environment:

sui client new-env --rpc https://devnet.m2.movementlabs.xyz:443 --alias m2

Switch to the M2 environment and attempt publishing again:

sui client publish --gas-budget 20000000

If dependency errors occur, use the --skip-dependency-verification flag:

sui client publish --gas-budget 20000000 --skip-dependency-verification

Upon success, the transaction digest and object changes will confirm deployment.

Minting an NFT

Call the mint function to create an NFT:

sui client call --package [your-package-id] --module devnet_nft --function mint --gas-budget 10000000 --args "test name" "test desc" "https://www.sui.io"

Verify the transaction and newly created object via Sui Explorer.


Experimenting With M1 via Solidity Smart Contracts

M1 supports Solidity smart contracts through its Fractal integration. Here’s how to deploy an EVM-compatible contract.

1. Add Network to EVM Wallet

Add a custom network with these details:

2. Fund Your Account

Use the dedicated faucet to acquire MOV tokens for the M1 testnet.

3. Deploy via Remix

Open Remix IDE and create a new Solidity file (e.g., an ERC721 template). Compile the contract, connect your wallet via “Injected Provider,” and deploy. Confirm the transaction on the M1 explorer.

👉 Explore advanced deployment strategies


Frequently Asked Questions

What is the Movement network?
Movement is a modular blockchain framework using the Move language. It currently offers two testnets: M1 (Avalanche Subnet with Aptos/Sui compatibility) and M2 (Ethereum L2 with Sui compatibility).

How do I acquire testnet tokens for Movement?
Both M1 and M2 have dedicated faucets. For M2, use the Sui-compatible faucet. For M1, use the EVM-focused faucet to get MOV tokens.

Why did my deployment fail with version errors?
Movement is under active development, so tooling versions may mismatch. Using the --skip-dependency-verification flag or local Sui CLI can resolve this.

Can I deploy Solidity contracts on Movement?
Yes, but only on M1. It supports Solidity smart contracts via Fractal integration, while M2 is tailored for Move-based applications.

What is the future of M2?
M2 may be repurposed once M1 achieves full Sui compatibility. Always refer to official announcements for the latest updates.

Is Movement suitable for production use?
No, both M1 and M2 are testnets. Avoid deploying production contracts until mainnet launch.


Conclusion

Movement presents a promising modular blockchain framework with support for Move and Solidity. While still in development, its high throughput and compatibility features make it a project to watch. As the ecosystem matures, developers can expect more streamlined tools and documentation.

For further learning, refer to the official Movement documentation and community channels. 👉 Get real-time development tools