Go to file
rigelrozanski d27b82d366 version fix, closes #45 2017-03-01 13:12:25 -05:00
app test LoadGenesis and change format 2017-02-25 00:12:15 +01:00
cmd version bump to 0.2.0 2017-02-26 13:51:39 -05:00
data test LoadGenesis and change format 2017-02-25 00:12:15 +01:00
demo run demo test on circle 2017-02-26 13:14:12 -05:00
docs Merge branch 'queryReg' into develop 2017-02-19 14:08:31 -05:00
plugins test LoadGenesis and change format 2017-02-25 00:12:15 +01:00
scripts Disable scripts/* building with build tags 2016-04-13 15:05:07 -07:00
state Use new go-crypto S structs to get full go-data support 2017-02-25 00:12:15 +01:00
tests test LoadGenesis and change format 2017-02-25 00:12:15 +01:00
types Update go-crypto, move testutils into types 2017-02-25 00:12:15 +01:00
version version fix, closes #45 2017-03-01 13:12:25 -05:00
.gitignore Fix sendtx to not panic on error 2017-01-30 19:11:44 +01:00
LICENSE Add Apache2.0 license 2016-09-10 15:53:15 -07:00
Makefile Update go-crypto, move testutils into types 2017-02-25 00:12:15 +01:00
README.md CLI fee and amount now use string inputs specifying the coin type 2017-02-13 17:01:28 -05:00
circle.yml run demo test on circle 2017-02-26 13:14:12 -05:00
glide.lock Update go-crypto, move testutils into types 2017-02-25 00:12:15 +01:00
glide.yaml Merge abci_proof 2017-01-28 09:33:07 -08:00

README.md

Basecoin

DISCLAIMER: Basecoin is not associated with Coinbase.com, an excellent Bitcoin/Ethereum service.

Basecoin is an ABCI application designed to be used with the Tendermint consensus engine to form a Proof-of-Stake cryptocurrency. It also provides a general purpose framework for extending the feature-set of the cryptocurrency by implementing plugins.

Basecoin serves as a reference implementation for how we build ABCI applications in Go, and is the framework in which we implement the Cosmos Hub. It's easy to use, and doesn't require any forking - just implement your plugin, import the basecoin libraries, and away you go with a full-stack blockchain and command line tool for transacting.

WARNING: Currently uses plain-text private keys for transactions and is otherwise not production ready.

Installation

On a good day, basecoin can be installed like a normal Go program:

go get -u github.com/tendermint/basecoin/cmd/basecoin

In some cases, if that fails, or if another branch is required, we use glide for dependency management.

The guaranteed correct way of compiling from source, assuming you've already run go get or otherwise cloned the repo, is:

cd $GOPATH/src/github.com/tendermint/basecoin
git checkout develop # (until we release tendermint v0.9)
make get_vendor_deps
make install

This will create the basecoin binary in $GOPATH/bin.

Command Line Interface

The basecoin CLI can be used to start a stand-alone basecoin instance (basecoin start), or to start basecoin with Tendermint in the same process (basecoin start --in-proc). It can also be used to send transactions, eg. basecoin tx send --to 0x4793A333846E5104C46DD9AB9A00E31821B2F301 --amount 100btc,10gold See basecoin --help and basecoin [cmd] --help for more details`.

Learn more

  1. Getting started with the Basecoin tool
  2. Learn more about Basecoin's design
  3. Extend Basecoin using the plugin system
  4. Learn more about plugin design
  5. See some more example applications
  6. Learn how to use InterBlockchain Communication (IBC)
  7. Deploy testnets running your basecoin application.