Solidity to MultiversX smart contract transpiler with CLI and TypeScript SDK. As of v1.0.0 (released 2025), XTract also includes wallet creation, WASM build via mxpy, and deployment to devnet/testnet/mainnet. It supports full Solidity function bodies, mappings (including nested), modifiers, inheritance, events, require/revert, and control flow. The npm package xtract-cli ships TypeScript types and a SDK (XtractTranspiler, ContractDeployer) for programmatic use. Peer dependency on @multiversx/sdk-core >=13.0.0. Node >=18 required.
npm install xtract-cliNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Transpile a simple Solidity counter contract to Rust and deploy the pre-built WASM to MultiversX devnet.
Change import to 'xtract-cli/sdk'.
Update CI/CD pipelines to use the new CLI commands. Review changelog for full migration guide.
Migrate to npm package xtract-cli@>=1.0.0.
Use hardware wallet or keep PEM file secure. For testnets, it's acceptable but avoid on mainnet.
Install mxpy from https://docs.multiversx.com/sdk-and-tools/mxpy/
Update Node.js to >=18.0.0.
Change import path to 'xtract-cli/sdk'.
Add 'type': 'module' to package.json or use .mjs extension.
npm install @multiversx/sdk-core@^13.0.0
Use named import: import { XtractTranspiler } from 'xtract-cli/sdk'.