Setting Up Dev Environment
You would need an environment to run contracts. You can either run your node locally or connect to an existing network.
For easy testing, the MANTRA DuKont Testnet is live. You can use DuKong to deploy and run your contracts.
To verify that the network is currently active, make sure the following URLs are working for you:
RPC Endpoints: https://rpc.dukong.mantrachain.io/
The network has one native token set up - OM (uom)
for becoming a validator and for paying fees.
The official MANTRA DuKong Chain (Testnet) Block Explorer is at:
You can use the block explorer to explore transactions, addresses, validators and contracts.
When interacting with DuKong, you can either use wasmd
which is a Go client, or the Node REPL. The Node REPL is recommended for contract operations, since JSON manipulation is not intuitive with the Shell/Go client.
Setting up environment variables
Let's configure the mantrachaind
executable, point it to the DuKong network, create a wallet and ask for tokens from faucet:
First, create a file called mantrachaind-cli.env
:
export CHAIN_ID="mantra-dukong-1"
export TESTNET_NAME="mantra-dukong"
export DENOM="uom"
export BECH32_HRP="wasm"
export WASMD_VERSION="v0.53.0"
export CONFIG_DIR=".mantrachaind"
export BINARY="mantrachaind"
export COSMJS_VERSION="v0.28.1"
export GENESIS_URL="https://<location-to-be-provided>/config/genesis.json"
export RPC="<https://rpc.dukong.mantrachain.io:443>"
export FAUCET="<https://faucet.dukong.mantrachain.io>"
# If you are using the bash terminal (usually Windows/Linux) add the following lines:
export NODE="--node $RPC"
export TXFLAG="$NODE --chain-id $CHAIN_ID --gas-prices 0.01$DENOM --gas auto --gas-adjustment 1.5"
# Otherwise, if you are using zsh terminal (usually MacOS) add the following lines instead:
export NODE=(--node $RPC)
export TXFLAG=($NODE --chain-id $CHAIN_ID --gas-prices 0.01$DENOM --gas auto --gas-adjustment 1.5)
Save the above and then source
it to set the environment variables.
source mantrachaind-cli.env
We'll use these environment variables later.
Setup wallet addresses
Set up wallets with addresses for storing tokens.
# add wallets for testing
mantrachaind keys add wallet
mantrachaind keys add wallet2
- address: mantra188xl62zf0hdscf47zyf6ajz9x4ym0v90h9whrx
name: wallet
pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"AiFGNfxnlXj0Uos/3G918Pdzsq4CBg1c0RXrxRh8lCyM"}'
type: local
**Important** write this mnemonic phrase in a safe place.
It is the only way to recover your account if you ever forget your password.
truth quarter rack west trouble suffer grief path patch come mushroom more improve gallery moral recipe error abandon modify drop vague holiday upset open
It is the only way to recover your account if you ever forget your password.
truth quarter rack west trouble suffer grief path patch come mushroom more improve gallery moral recipe error abandon modify drop vague holiday upset open
Request tokens
You will need some OM test tokens stored in your wallet address in order to interact with the network. In order to get testnet tokens please request faucets at MANTRA Discord Server.
Last updated