Maker Purple paper on Tendermint
Purplechain is a port of Maker Purple that runs on top of Tendermint consensus. It integrates with the Cosmos SDK auth
and bank
modules by using their equivalents from the Kepler SDK.
This repo provides
- a Purplechain Cosmos SDK module
- a Purplechain node binary
- a docker image for purplechain nodes
- a tmux script for running a network
An asciinema recording is available showcasing the devnet. The tmux session shown has one panel for each node (run in its own Docker container), where the middle-right pane is the only non-validator node. The bottom panel initializes the devnet and is used for issuing transactions/queries.
You will need to have Docker installed and configured on your machine if you want to run each node in a separate container.
The Nix package manager is required for building or working on this project. You can get it from its homepage. All other dependencies (except Docker) are handled by Nix. Note that Nix does not yet work on Windows - you will need either a virtual machine or Windows Subsystem for Linux.
For development purposes, it is possible to simply execute each node in a separate thread listening on localhost ports.
Once you have Nix installed, you can run make dev
to get a working environment with a hoogle server and an auto-reloading devnet.
You can also run nix-shell
to enter a nix shell with dependencies for the project setup in the environment, and then use a more custom workflow.
If you have Docker setup, you can then run make tmux
for a "production-like" environment.
For more fine-grained commands, see the Makefile.