The First Modular AI Chain
Go to file
2018-09-03 16:38:51 -04:00
cmd improve command UX 2018-09-01 22:22:50 -04:00
internal print out update from get pachan command 2018-09-03 16:38:51 -04:00
testnets add new testnet 2018-08-17 17:20:41 -04:00
.dockerignore add testnet details 2018-08-17 11:32:38 -04:00
.gitignore remove deployment from main repo 2018-08-14 10:06:01 -04:00
docker-compose.yml fix missed port numbers 2018-08-17 11:38:15 -04:00
Dockerfile minor docker file update 2018-08-15 15:09:35 -04:00
Gopkg.lock update dependencies, remove lcd 2018-08-14 18:14:16 -04:00
Gopkg.toml update dependencies, remove lcd 2018-08-14 18:14:16 -04:00
kava-logo.svg prettify readme 2018-08-17 17:38:18 -04:00
README.md typo fix 2018-08-29 10:05:25 -04:00

Kava Blockchain

A decentralized fast-finality blockchain for interoperable payment channel networks. Building on the work of Tendermint and Interledger.

Project status: We're currently in a very early public testnet. With future features being implemented.

Try it out - run a full node to sync to the testnet, or set up as a validator.

Install

Requirements: go installed and set up (version 1.10+).

  1. If installing from a new Ubuntu server (16.04 or 18.04), here's how to setup go:

    sudo apt update
    sudo apt upgrade -y
    sudo apt install git gcc make wget -y
    wget https://dl.google.com/go/go1.10.3.linux-amd64.tar.gz
    sudo tar -xvf go1.10.3.linux-amd64.tar.gz
    sudo mv go /usr/local
    
    cat >> ~/.profile <<EOF
    export GOROOT=/usr/local/go
    export GOPATH=\$HOME/go
    export PATH=\$GOPATH/bin:\$GOROOT/bin:\$PATH
    EOF
    
    source ~/.profile
    
  2. Get the code.

    mkdir -p $GOPATH/src/github.com/kava-labs
    cd $GOPATH/src/github.com/kava-labs
    git clone https://github.com/kava-labs/kava
    cd kava
    
  3. Install the dependencies.

    mkdir $GOPATH/bin
    curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
    dep ensure
    
  4. Install the code

     go install ./cmd/kvd
     go install ./cmd/kvcli
    

Run a Full Node

kvd init --name <your-name> --chain-id kava-test-1

This will generate config and keys in $HOME/.kvd and $HOME/.kvcli. The default password is 'password'.

Note: Make sure GOBIN is set and added to your path if you want to be able to run installed go programs from any folder.

Copy the testnet genesis file (from https://raw.githubusercontent.com/Kava-Labs/kava/master/testnets/kava-test-1/genesis.json) into $HOME/.kvd/config/, replacing the existing one.

Add the kava node address, 0dfd43e440e34fc193ddee4ae99547184f3cb5d1@validator.connector.kava.io:26656, to seeds in $HOME/.kvd/config/config.toml

Start your full node

kvd start

Note: It might take a while to fully sync. Check the latest block height here.

Run a Validator

Join the validator chat. Follow setup for a full node above.

Get you address with kvcli keys list. Should look something like cosmosaccaddr10jpp289accvkhsvrpz4tlj9zhqdaey2tl9m4rg.

Ask @rhuairahrighairidh in the chat to give you some coins.

Get your validator pubkey with kvd tendermint show_validator

Then, your full running in the background or separate window, run:

kvcli stake create-validator \
        --amount 900KVA \
        --pubkey <you validator pubkey from above> \
        --address-validator <your address from above> \
        --moniker "<your name>" \
        --chain-id kava-test-1 \
        --from <your name>

Note You'll need to type in the default password "password"

Now your full node should be participating in consensus and validating blocks!

Running a validator requires that you keep validating blocks. If you stop, your stake will be slashed.
In order to stop validating, first remove yourself as validator, then you can stop your node.

kvcli stake unbond begin \
	--address-delegator <your address> \
	--address-validator <your address> \
	--chain-id kava-test-1 \
	--shares-percent 1 \
	--from <your name>