Go to file
Ethan Buchman 7335c8287c docs: example-plugin 2017-02-07 16:12:50 -05:00
app app.GetState() for testing 2017-02-03 16:06:12 -05:00
cmd cli: key command 2017-02-07 16:12:50 -05:00
data cli: key command 2017-02-07 16:12:50 -05:00
demo fixes to make demo work 2017-01-29 22:45:12 -08:00
docs docs: example-plugin 2017-02-07 16:12:50 -05:00
plugins docs: example-plugin 2017-02-07 16:12:50 -05:00
scripts Disable scripts/* building with build tags 2016-04-13 15:05:07 -07:00
state Vote->Counter; Fee is types.Coin; Context has Account; Cleanup 2017-01-15 15:10:51 -08:00
tests Merge abci_proof 2017-01-28 09:33:07 -08:00
testutils Vote->Counter; Fee is types.Coin; Context has Account; Cleanup 2017-01-15 15:10:51 -08:00
types Fixed Coins IsValid, issue #8 2017-01-31 12:24:49 +01: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 Merge abci_proof 2017-01-28 09:33:07 -08:00
README.md docs: example-plugin 2017-02-07 16:12:50 -05:00
glide.lock Add test for bad proof 2017-01-29 22:31:05 -08: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

We use glide for dependency management. The prefered way of compiling from source is the following:

go get -d github.com/tendermint/basecoin/cmd/basecoin
cd $GOPATH/src/github.com/tendermint/basecoin
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 100 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.