Crossfi Blockchain

CrossFi Chain is a layer 1 blockchain with a modular architecture. It consists of two integral parts, Cosmos and EVM. Each part is responsible for its specific functionality, with their work completely synchronized as a single organism.

Valoper mxvaloper17fwjseq6nhcsnwl45kg5yhgum8rp8zvhwxh7cq
Version

Loading...

Stage Mainnet
Last Block

Loading...

Chain

Loading...

IBC

Loading...

Status

Loading...

Explorer
Crossfi Blockchain
Snapshot
Loading...

INSTALLATION

Depedency

Login to root

#### From user with sudoers access

$ sudo su -

Update and install packages for compiling
# apt update -y && sudo apt install curl git jq lz4 lzma build-essential zsh -y

User Management

Create user salinem

Notes : make sure dont running validator used user root !!!

Notes :
We never used user salinem in our production, This user is just an example.
We assume you have already mounted big size DISK in /mainnet

# mkdir -p /mainnet && useradd -m -d /mainnet/salinem -s /bin/zsh salinem

Sudo Management

Create file in /etc/sudoers.d/salinem-sudo
salinem  ALL=(ALL)   NOPASSWD: /usr/bin/systemctl daemon-reload, \
   /usr/bin/systemctl * crossfi-node*, \
   /usr/bin/journalctl -fu *, \
   /usr/bin/cp -rf /mainnet/salinem/systemd/* /etc/systemd/system/*, \
   /usr/bin/cp /mainnet/salinem/systemd/* /etc/systemd/system/*

FHS / Filesystem Hierarchy

Login to User salinem

#### From user with sudoers access

$ sudo su - salinem

#### OR If you started from user root do this

# su - salinem

We create FHS in /mainnet/salinem
   /
   /bin
   /etc
   /mainnet/salinem
   |           |
   |           |---bin
   |           |    |------go
   |           |    |       |---bin
   |           |---conf
   |           |---source
   |           |---systemd
   |           |---lib
   |           |---tmp
   /dev
   /mnt
Create Directory, make sure you have already login with user salinem
#### Create FHS
mkdir -p ${HOME}/tmp
mkdir -p ${HOME}/lib
mkdir -p ${HOME}/bin
mkdir -p ${HOME}/conf
mkdir -p ${HOME}/source
mkdir -p ${HOME}/systemd

Deploy Application

The Purpose is extract from file compression and move to ${HOME}/bin
cd ${HOME}/tmp 
wget -c https://github.com/crossfichain/crossfi-node/releases/download/v0.1.1/mineplex-2-node._v0.1.1_linux_amd64.tar.gz 
filename=$(ls -1)
check_extension_gz=$(echo $filename | grep -i "tar.gz" | wc -l)
check_extension_zip=$(echo $filename | grep -i "zip" | wc -l)
check_extension_elf=$(echo $filename | egrep -i "zip|tar.gz" | wc -l)
if [ $check_extension_gz -eq 1 ]
then
check_data=$(tar tf ${filename} | grep  )
tar xvf  ${filename} -C . 
mv ${check_data} ${HOME}/bin/
fi
if [ $check_extension_unzip -eq 1 ]
then
unzip ${filename} 
check_data=$(ls -1 | grep -v ${filename})
mv $check_data ${HOME}/bin/
fi
if [ $check_extension_elf -eq 0 ]
mv mineplex-chaind  ${HOME}/bin
fi

Environment and Variable

If Using ZSH
# Set Go path to $PATH variable
echo "export PATH=$PATH:/usr/local/go/bin:~/go/bin" >> $HOME/.zshrc
echo "export GOPATH="${HOME}/lib" >> $HOME/.zshrc
echo "export GOMAXPROCS=2" >> $HOME/.zshrc
echo "export CHAIN_ID=mineplex-mainnet-1" >> $HOME/.zshrc
echo "export WALLET_NAME=mywallet" >> $HOME/.zshrc
echo "export MONIKER=MYNODE"  >> $HOME/.zshrc
source ~/.zshrc
or
If Using BASH
# Set Go path to $PATH variable
echo "export PATH=$PATH:/usr/local/go/bin:~/go/bin" >> $HOME/.bashrc
echo "export GOPATH="${HOME}/lib" >> >> $HOME/.bahsrc
echo "export GOMAXPROCS=2" >> $HOME/.bashrc
echo "export CHAIN_ID=mineplex-mainnet-1" >> $HOME/.bashrc
echo "export WALLET_NAME=mywallet" >> $HOME/.bashrc
echo "export MONIKER=MYNODE"  >> $HOME/.bashrc
source ~/.bashrc

Initiation Moniker

mineplex-chaind init --chain-id $CHAIN_ID "$MONIKER"

Deploy Genesis

curl -Ls  https://roomit.xyz/genesis/mainnet/crossfi/genesis.json > $HOME/.mineplex-chain/config/genesis.json 

Deploy Addressbook

curl -Ls  https://roomit.xyz/addressbook/mainnet/crossfi/addrbook.json > $HOME/.mineplex-chain/config/genesis.json 

Change Custom Port (optional)

If you have conflicted port or running tendermint with 1 environment node. you need change the ports otherwise you have conflicted ports.

PROXY_APP="16505"
RPC="16705" 
PROF_RPC="1105" 
P2P="16605" 
METRICS="16805" 
API="1205" 
GRPC="1305" 
WEBGRPC="1405" 

sed -i.bak -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:${PROXY_APP}\"%" $HOME/.mineplex-chain/config/config.toml 
sed -i.bak -e "s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://127.0.0.1:${RPC}\"%" $HOME/.mineplex-chain/config/config.toml 
sed -i.bak -e "s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:${PROF_RPC}\"%" $HOME/.mineplex-chain/config/config.toml 
sed -i.bak -e "s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:${P2P}\"%" $HOME/.mineplex-chain/config/config.toml 
sed -i.bak -e "s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":${METRICS}\"%" $HOME/.mineplex-chain/config/config.toml
sed -i.bak -e "s%^address = \"tcp://0.0.0.0:1317\"%address = \"tcp://0.0.0.0:${API}\"%" $HOME/.mineplex-chain/config/app.toml
sed -i.bak -e "s%^address = \"0.0.0.0:9090\"%address = \"0.0.0.0:${GRPC}\"%" $HOME/.mineplex-chain/config/app.toml
sed -i.bak -e "s%^address = \"0.0.0.0:9091\"%address = \"0.0.0.0:${WEBGRPC}\"%" $HOME/.mineplex-chain/config/app.toml

Change Prune Parameter (optional)

sed -i \
  -e 's|^pruning *=.*|pruning = "custom"|' \
  -e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' \
  -e 's|^pruning-keep-every *=.*|pruning-keep-every = "0"|' \
  -e 's|^pruning-interval *=.*|pruning-interval = "19"|' \
  $HOME/.mineplex-chain/config/app.toml

Create Service Systemd

Login to root

#### From user with sudoers access

$ sudo su -

The first we made in user salinem ${HOME}/systemd/
cat > ${HOME}/systemd/crossfi-node.service << EOF
[Unit]
Description= Tendermint Daemon
After=network-online.target

[Service]
User=salinem
Group=salinem
ExecStart=/mainnet/salinem/bin/mineplex-chaind start  --home=/mainnet/salinem/.mineplex-chain
Restart=on-failure
RestartSec=3
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target
EOF
Copy from ${HOME}/systemd/crossfi-node.service to /etc/systemd/system/
sudo cp -rf /mainnet/salinem/systemd/crossfi-node.service /etc/systemd/system/

Service Management

Reload Daemon
sudo systemctl daemon-reload
Enable Service when booting
sudo systemctl enable crossfi-node.service
Start Service
sudo systemctl start crossfi-node.service
Check Service and Log
sudo systemctl status crossfi-node.service
sudo journalctl -fu crossfi-node.service
After All running well, You can speed up blocks using 2 methods Statesync or Snapshot

STATE-SYNC

Deployment Statesync

1. Create file or we assume filename already created statesync.sh, edit this file and put code below

#!/bin/bash

SNAP_RPC="https://rpc.crossfi.roomit.xyz:443"

LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); \
BLOCK_HEIGHT=$((LATEST_HEIGHT - 2000)); \
TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash)

sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1true| ; \
s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|\1\"$SNAP_RPC,$SNAP_RPC\"| ; \
s|^(trust_height[[:space:]]+=[[:space:]]+).*$|\1$BLOCK_HEIGHT| ; \
s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|\1\"$TRUST_HASH\"|" $HOME/.mineplex-chain/config/config.toml

2. Stop Service

sudo systemctl stop crossfi-node

Notes: for systemd init blockchain, adjust with your name of service. Example : systemctl stop mineplex-chaind

3. Execute Script

bash statesync.sh

4. Reset Node

# On some tendermint chains
mineplex-chaind unsafe-reset-all

# On other tendermint chains
mineplex-chaind tendermint unsafe-reset-all --home $HOME/.mineplex-chain --keep-addr-book

5. Start Services

sudo systemctl start crossfi-node

SNAPSHOT

Deployment Snapshot

1. Install Compression/Decompression Tools

sudo apt install lzma -y

2. Download Snapshot
Filename |
File Size |

SNAPSHOT=$(curl -s https://roomit.xyz/snapshot/mainnet/crossfi/ | grep -i "<a href=" | grep lzma | grep -v md5sum | awk -F"=" '{print $2}' |  sed 's/"//g' | sed "s/>//g" | sed "s/ //g")
wget -c https://roomit.xyz/snapshot/mainnet/crossfi/${SNAPSHOT} --inet4-only

3. Stop Your Service Blockchain

sudo systemctl stop crossfi-node

Notes : for systemd init blockchain, adjust with your name of service. Example : systemctl stop mineplex-chaind

4. Backup State Validator

cp ${HOME}/.mineplex-chain/data/priv_validator_state.json ${HOME}/.mineplex-chain/priv_validator_state.json

4. Reset Node Blockchain

mineplex-chaind tendermint unsafe-reset-all --home $HOME/.mineplex-chain --keep-addr-book

5. Extract Data Snapshot

lzma -d -c ${SNAPSHOT} | tar -xv -C $HOME/.mineplex-chain 

6. Restore State Validator

cp ${HOME}/.mineplex-chain/priv_validator_state.json ${HOME}/.mineplex-chain/data/priv_validator_state.json

7. Start Node Blockchain

sudo systemctl start crossfi-node

ENDPOINT PUBLIC

RPC

https://rpc.crossfi.roomit.xyz

API

https://api.crossfi.roomit.xyz

gRPC

grpc.crossfi.roomit.xyz:8443

Example Call:

Assume, you have done install grpcurl

grpcurl grpc.crossfi.roomit.xyz:8443 list

GENESIS

Deployment Genesis

Stop Your Service Blockchain
sudo systemctl stop crossfi-node

Notes : for systemd init blockchain, adjust with your name of service. Example : systemctl stop mineplex-chaind

Download And Deploy
curl -Ls  https://roomit.xyz/genesis/mainnet/crossfi/genesis.json > $HOME/.mineplex-chain/config/genesis.json 
Start Your Service Blockchain
sudo systemctl start crossfi-node

ADDRESSBOOK

Deployment Addressbook

Stop Your Service Blockchain
sudo systemctl stop crossfi-node

Notes : for systemd init blockchain, adjust with your name of service. Example : systemctl stop mineplex-chaind

Download And Deploy
curl -Ls  https://roomit.xyz/addressbook/mainnet/crossfi/addrbook.json > $HOME/.mineplex-chain/config/genesis.json 
Start Your Service Blockchain
sudo systemctl start crossfi-node

PEERS

SEEDS

Seed Peers

Our seeds peer for Crossfi Blockchain,
you can edit seeds = "" in ${HOME}/.mineplex-chain/config/config.toml
08bc9afd0cac4ae6cf8f1877920b0cc7e58a6f42@seeds.tendermint.roomit.xyz:40010

PERSISTENT

Persistent Peers

Our persistent peers for Crossfi Blockchain,
you can add our persistent persistent_peers = "" in ${HOME}/.mineplex-chain/config/config.toml
c012114f8e1464f01c2069de71de2088420d3fc8@p2p.tendermint.roomit.xyz:26610

All Persistent Peers Without Selection

All Persistent Peers Without Selection is mean we only get peer used 1 RPC endpoint or used 1 RPC.
PERSISTENT_PEERS="Data Processing"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$PERSISTENT_PEERS\"/" ${HOME}/.mineplex-chain/config/config.toml

All Persistent Peers With Selection

All Persistent Peers With Selection is mean we collet data from any RPC and doing selection with method similar frequency and connection test.
PERSISTENT_PEERS=| Data Processing |
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$PERSISTENT_PEERS\"/" ${HOME}/.mineplex-chain/config/config.toml

PRUNE

Change Prune Parameter

sed -i \
  -e 's|^pruning *=.*|pruning = "custom"|' \
  -e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' \
  -e 's|^pruning-keep-every *=.*|pruning-keep-every = "0"|' \
  -e 's|^pruning-interval *=.*|pruning-interval = "19"|' \
  $HOME/.mineplex-chain/config/app.toml

PORT

Change Custom Port

If you have conflicted port or running tendermint with 1 environment node. you need change the ports otherwise you have conflicted ports.

PROXY_APP="16505"
RPC="16705" 
PROF_RPC="1105" 
P2P="16605" 
METRICS="16805" 
API="1205" 
GRPC="1305" 
WEBGRPC="1405" 

sed -i.bak -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:${PROXY_APP}\"%" $HOME/.mineplex-chain/config/config.toml 
sed -i.bak -e "s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://127.0.0.1:${RPC}\"%" $HOME/.mineplex-chain/config/config.toml 
sed -i.bak -e "s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:${PROF_RPC}\"%" $HOME/.mineplex-chain/config/config.toml 
sed -i.bak -e "s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:${P2P}\"%" $HOME/.mineplex-chain/config/config.toml 
sed -i.bak -e "s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":${METRICS}\"%" $HOME/.mineplex-chain/config/config.toml
sed -i.bak -e "s%^address = \"tcp://0.0.0.0:1317\"%address = \"tcp://0.0.0.0:${API}\"%" $HOME/.mineplex-chain/config/app.toml
sed -i.bak -e "s%^address = \"0.0.0.0:9090\"%address = \"0.0.0.0:${GRPC}\"%" $HOME/.mineplex-chain/config/app.toml
sed -i.bak -e "s%^address = \"0.0.0.0:9091\"%address = \"0.0.0.0:${WEBGRPC}\"%" $HOME/.mineplex-chain/config/app.toml

CLI

Setup Environment

IMPORTANT! You must setup this environment before used CLI
If you using bash shell
echo "export RPC="http://localhost:$(head -n100 ${HOME}/.mineplex-chain/config/config.toml | grep "[rpc]" | grep "^laddr" | awk -F":" '{print $3}' | tr -d "\"" |  tr "\n" " " |sed "s/ //")"" >> ${HOME}/.bashrc
echo "export UNIT="mpx"" >> ${HOME}/.bashrc
echo "export MONIKER="NODE_DEPLOY_ROOMIT_SCRIPT"" >> ${HOME}/.bashrc
echo "export CHAIN_ID="mineplex-mainnet-1"" >> ${HOME}/.zshrc
echo "export PROFILE="PGP_KEY_OF_KEYBASE"" >> ${HOME}/.bashrc
echo "export DETAILS="Describes Your Validator"" >> ${HOME}/.bashrc
echo "export WEBSITE="https://yourwebsite.com"" >> ${HOME}/.bashrc
source ${HOME}/.bashrc
If you using zsh shell
echo "export RPC="http://localhost:$(head -n100 ${HOME}/.mineplex-chain/config/config.toml | grep "[rpc]" | grep "^laddr" | awk -F":" '{print $3}' | tr -d "\"" |  tr "\n" " " |sed "s/ //")"" >> ${HOME}/.zshrc
echo "export UNIT="mpx"" >> ${HOME}/.zshrc
echo "export MONIKER="NODE_DEPLOY_ROOMIT_SCRIPT"" >> ${HOME}/.zshrc
echo "export CHAIN_ID="mineplex-mainnet-1"" >> ${HOME}/.zshrc
echo "export PROFILE="PGP_KEY_OF_KEYBASE"" >> ${HOME}/.zshrc
echo "export DETAILS="Describes Your Validator"" >> ${HOME}/.zshrc
echo "export WEBSITE="https://yourwebsite.com"" >> ${HOME}/.zshrc
source ${HOME}/.zshrc

Gas Fees

Default setting for gas fee Crossfi Blockchain
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5

Keys Management

We assume,You have complete identities. Moniker, Website, Security and Details Your Validator Install jq package for management json format

Ubuntu
apt install jq

CentOS
yum install jq

Arch Linux
pacman -S jq

Add New Key
mineplex-chaind keys add mywallet --home ${HOME}/.mineplex-chain 
Recover Key
Recovery key with passpharse
mineplex-chaind keys add mywallet --recover --home ${HOME}/.mineplex-chain
Recovery key with passpharse
mineplex-chaind keys add mywallet --recover --keyring-backend os --home ${HOME}/.mineplex-chain
List Key
mineplex-chaind keys list --home ${HOME}/.mineplex-chain
Delete Key
mineplex-chaind keys delete mywallet --home ${HOME}/.mineplex-chain
Export Key
mineplex-chaind keys export mywallet --home ${HOME}/.mineplex-chain
Import Key
mineplex-chaind keys import mywallet mywallet.backup --home ${HOME}/.mineplex-chain
Show All Balances Address
for mywallet in `mineplex-chaind keys list --home ${HOME}/.mineplex-chain --output json| jq -r ".[] .address"`
do
    mineplex-chaind q bank balances ${mywallet} --home ${HOME}/.mineplex-chain --chain-id ${CHAIN_ID} --node ${RPC}
done
Show All Balances Address
mineplex-chaind q bank balances mywallet_public_address --home ${HOME}/.mineplex-chain --chain-id ${CHAIN_ID} --node ${RPC}

Validator Management

We assume,You have complete identities. Moniker, Website, Security and Details Your Validator Install jq package for management json format

Ubuntu
apt install jq

CentOS
yum install jq

Arch Linux
pacman -S jq

Create New Validator
Before create validator make sure you have balance in your wallet (mywallet).
mineplex-chaind tx staking create-validator \
--amount=1000000${UNIT} \
--pubkey=$(mineplex-chaind tendermint show-validator --home ${HOME}/.mineplex-chain) \
--moniker="${MONIKER}" \
--identity="${PROFILE}" \
--details="${DETAILS}" \
--website="${WEBSITE}" \
--chain-id=${CHAIN_ID} \
--commission-rate=0.05 \
--commission-max-rate=0.20 \
--commission-max-change-rate=0.01 \
--min-self-delegation=1 \
--from=mywallet \
--node ${RPC} \
--home ${HOME}/.mineplex-chain \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y
Edit Validator
Before edit validator make sure you have balance in your wallet (mywallet).
mineplex-chaind tx staking edit-validator \
--pubkey=$(mineplex-chaind tendermint show-validator --home ${HOME}/.mineplex-chain) \
--moniker="${MONIKER}" \
--identity="${PROFILE}" \
--details="${DETAILS}" \
--website="${WEBSITE}" \
--chain-id=${CHAIN_ID} \
--commission-rate=0.05 \
--from=mywallet \
--node ${RPC} \
--home ${HOME}/.mineplex-chain \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y
Edit Validator
mineplex-chaind status 2>&1 | jq .ValidatorInfo
Get Status Syncing Block
mineplex-chaind status 2>&1 | jq .SyncInfo
Get Peer Own Id
echo $(mineplex-chaind tendermint show-node-id)'@'$(curl -s ifconfig.me)':'$(cat $HOME/.mineplex-chain/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
Get ALl Peer Node
curl -sS ${RPC}/net_info | jq -r '.result.peers[] | "\(.node_info.id)@\(.remote_ip):\(.node_info.listen_addr)"' | awk -F ':' '{print $1":"$(NF)}'
Unjail Validator
mineplex-chaind tx slashing unjail \
--from mywallet \
--chain-id ${CHAIN_ID} \
--home ${HOME}/.mineplex-chain \
--node  ${RPC} \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y
Jail Reason
mineplex-chaind query slashing signing-info $(mineplex-chaind tendermint show-validator) \
--node  ${RPC} \
--home ${HOME}/.mineplex-chain
List All Active Validator
mineplex-chaind  q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl
List All Inactive Validator
mineplex-chaind q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl
Show Validator Details
mineplex-chaind query staking validator \
$(mineplex-chaind keys show \ 
$(mineplex-chaind keys list --home ${HOME}/.mineplex-chain --output json| jq -r ".[] .address" | tail -n1) \
--bech val -a) \
--chain-id ${CHAIN_ID} \
--node $RPC

Token Management

Withdraw All Reward From Validator
mineplex-chaind tx distribution withdraw-all-rewards \
--from mywallet \
--chain-id ${CHAIN_ID} \
--node $RPC \
--home ${HOME}/.mineplex-chain \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y
Withdraw Commision Reward From Validator
mineplex-chaind tx distribution withdraw-rewards $(mineplex-chaind keys show mywallet --bech val -a) \
--commission \
--from mywallet \
--chain-id ${CHAIN_ID} \
--node $RPC \
--home ${HOME}/.mineplex-chain \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y 
Delegate My Token to Own Validator
mineplex-chaind  tx staking delegate prefixVALOPExxxxxx 100000${UNIT} \ 
--from mywallet \
--chain-id ${CHAIN_ID} \
--node $RPC \
--home ${HOME}/.mineplex-chain \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y
Redelegate Tokens to Another Validator
mineplex-chaind tx staking redelegate $(mineplex-chaind keys show wallet --bech val -a)  100000${UNIT} \
--from mywallet \
--chain-id ${CHAIN_ID} \
--node $RPC \
--home ${HOME}/.mineplex-chain \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y 
Unbound or Unstake Your Tokens
mineplex-chaind tx staking unbond $(mineplex-chaind keys show wallet --bech val -a) 100000${UNIT} \
--from mywallet \
--chain-id ${CHAIN_ID} \
--node $RPC \
--home ${HOME}/.mineplex-chain \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y 
Send tokens to the wallet
mineplex-chaind tx bank send wallet  100000${UNIT} \
--from mywallet \
--chain-id ${CHAIN_ID} \
--node $RPC \
--home ${HOME}/.mineplex-chain \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y 

Governance Management

We assume,You have complete identities. Moniker, Website, Security and Details Your Validator Install jq package for management json format

Ubuntu
apt install jq

CentOS
yum install jq

Arch Linux
pacman -S jq

List All Proposals
mineplex-chaind  query gov proposals
Voting
### vote yes
mineplex-chaind tx gov vote 1 yes \
--from mywallet \
--chain-id ${CHAIN_ID} \
--node $RPC \
--home ${HOME}/.mineplex-chain \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y 

### vote no
mineplex-chaind tx gov vote 1 no \
--from mywallet \
--chain-id ${CHAIN_ID} \
--node $RPC \
--home ${HOME}/.mineplex-chain \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y 

### vote abstain
mineplex-chaind tx gov vote 1 abstain \
--from mywallet \
--chain-id ${CHAIN_ID} \
--node $RPC \
--home ${HOME}/.mineplex-chain \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y 

### vote No With Veto
mineplex-chaind tx gov vote 1 nowithveto \
--from mywallet \
--chain-id ${CHAIN_ID} \
--node $RPC \
--home ${HOME}/.mineplex-chain \
--gas=auto --gas-prices=10000000000000mpx --gas-adjustment=1.5 \
-y   

VALIDATORS LIST

Validator Details Commission Status Jailed Staked USD

GOVERNANCE

Governance This Month |
Proposal Description Status Voting Start Voting End Total Voted Participant

NETWORK SCAN

Network scan is tools for check node where the node open direct port rpc from internet without proxy.

This data collect from our RPC only https://rpc.crossfi.roomit.xyz

P2P Network Moniker RPC Remote IP Status

MAP NODE

IP Address City Region Country Latitude Longitude