Documentation
Everything you need to build, deploy, and scale cross-VM applications on InterLayer.
Getting Started
Installation, setup, and your first deployment
- Environment Setup
- CLI Installation
- First Contract
- Testnet Access
Core Concepts
Understand MEL, VMs, and atomic execution
- MEL Architecture
- VM Adapters
- Atomic Bundles
- Gas & Fees
CLI Reference
Complete command-line interface documentation
- init
- compile
- deploy
- test
- node
SDK Documentation
TypeScript, Rust, and Python libraries
- @interlayer/sdk
- Rust Crate
- Python Package
- WebSocket API
RPC API
JSON-RPC methods and GraphQL queries
- Chain Queries
- Transaction Submit
- Block Subscriptions
- Multi-VM Calls
Runtime Pallets
Substrate pallet documentation
- fee-distribution
- mel-core
- mel-evm
- mel-svm
Full API Reference
Complete RPC methods and error codes
- All RPC Methods
- Runtime Pallets
- Error Codes
- WebSocket API
CLI Reference
interlayer init
Initialize a new InterLayer project
- --template: Choose VM template (evm, svm, polkavm, move)
- --path: Custom directory path
- --git: Initialize git repository
interlayer compile
Compile smart contracts
interlayer deploy
Deploy contracts to network
- --network: Target network (testnet, mainnet, local)
- --vm: Specify VM for deployment
- --account: Deployer account
- --gas-limit: Custom gas limit
interlayer node
Run local development node
Network Ports & MEL Envelope
Below are the active local and staging ports used by developers to interface with specific execution layers. When deploying or developing on standard domains, the network gateway handles mapping automatically.
RPC Endpoints
| Service | Endpoint | Protocol | Use |
|---|---|---|---|
| Unified MEL (HTTPS) | rpc.interlayer.one | HTTP | All virtual machines |
| Unified MEL (WSS) | ws.interlayer.one | WSS | Realtime subscriptions |
| EVM RPC | evm.interlayer.one | HTTP | MetaMask / Foundry |
| SVM RPC | svm.interlayer.one | HTTP | Solana SDK / Phantom |
| PolkaVM | polkavm.interlayer.one | HTTP | ink! / Cargo Contract |
| Move VM | move.interlayer.one | HTTP | Move CLI / Modules |
| CosmWasm | cosmwasm.interlayer.one | HTTP | CosmJS / CosmWasm |
The Multi-VM Transaction Envelope (MEL Envelope)
Transactions executed across completely different virtual machines are wrapped into a single unified container before consensus boundary verification. This container is signed once by your primary wallet credentials.
unified-balance ledger dynamically locks the user's primary account balance before acquiring the targeted VM locks, preventing double-spends and partial states.SDK Documentation
TypeScript SDK
Rust SDK
JSON-RPC API
InterLayer exposes standard Substrate JSON-RPC endpoints plus custom MEL methods:
chain_getBlock
Get block details by hash or number
mel_submitCrossVmTx
Submit atomic cross-VM transaction
state_getStorage
Query chain state directly