Cosmos-Cash
Cosmos cash is a distributed application that stores data in a key/value store and is secured using a Proof Of Authority consensus algorithm.
The goal of the application is to re-define how an electric money institution works by leveraging the cosmos-sdk and tendermint.
How to install the application
- Clone the repository
git clone git@github.com:allinbits/cosmos-cash-poc.git
- Install the binaries (poad, poacli)
cd cosmos-cash-poc
make install
- Ensure binaries are available
poad -h
poacli -h
How to initialize the application
- Initialize the genesis file ($HOME/.poad/config/genesis.json)
poad init --chain-id=cash cash
- Create a key for the first validator
poacli keys add validator
- Add the validator that was created in the step 2 as the first validator and assign them 1000000000
cash
coins
poad add-genesis-account $(poacli keys show validator -a) 1000000000cash,1000000000stake
- Generate a initial
CreateValidator
transaction to allow other applications in the network to sync when they join
poad gentx --name validator
- Put the previously generated transaction in the correct location to allow the application to start correctly
poad collect-gentxs
- Start the applicaton 🎉
poad start
- Run commands outlined in the Makefile
cat Makefile | grep create-
How to run a localnet
- Build the dockerfile
docker build -t 388991194029.dkr.ecr.us-east-1.amazonaws.com/allinbits-dev/cosmos-cash-poa .
- Run the localnet
make localnet-start
- Set up the consensus
make localnet-consensus
- Create issuer data
make localnet-distribute-tokens
- Create user data
make localnet-users
How to run the webui (run localnet commands for seed data)
- Go to the
vue
folder
cd vue
- Start the web server
yarn serve
- Check the website in the browser
localhost:8080