Move on Solana
- Note: Move on Solana is under construction and therefore this example project is not currently functioning. Please use it as a learning tool or a reference until construction is complete
This project demonstrates how to use the Solana Javascript API to build, deploy, and interact with Libra Move programs on the Solana blockchain.
There is a wealth of information about Libra and the Move language on the Libra developers page
What's here
The project comprises of:
- A
LibraPay
library to interact with the on-chain Move loader and virtual machine to create Genesis accounts, and mint and pay Libra coins:./src/program
- Move programs used to mint and pay Libra coins:
./programs
- Command-line front-end that demonstrates how to use the
LibraPay
library:src/cli/
Getting started
First fetch the npm dependencies, including @solana/web3.js
, by running:
$ npm install
Select a Network
The example connects to a local Solana cluster by default.
To enable on-chain Move loader/VM logs, set the RUST_LOG
environment variable:
$ export RUST_LOG=solana_runtime::system_instruction_processor=trace,solana_runtime::message_processor=info,solana_bpf_loader=debug,solana_rbpf=debug,solana_move_loader_program=debug
To start a local Solana cluster run:
$ npm run localnet:update
$ npm run localnet:up
Solana cluster logs are available with:
$ npm run localnet:logs
For more details on working with a local cluster, see the full instructions.
Alternatively to connect to the public testnet, export LIVE=1
in your
environment. By default LIVE=1
will connect to the
beta testnet. To use the edge testnet instead, define `export CHANNEL=edge' in
your environment (see url.js for more)
Run the Command-Line Front End
$ npm run start
Customizing the Program
To customize, make changes to the files under /src
Now when you run npm run start
again you should see the results of your changes.