Go to file
Ethan Frey 6f173a44a9 Added some notes on basecoin intro 2017-02-10 16:40:53 -05:00
app Assert that Basecoin ABCI app implements abci.BlockchainAware 2017-02-04 15:09:16 -08:00
cmd docs: update ibc 2017-02-07 20:35:43 -05:00
data cli: key command 2017-02-07 16:12:50 -05:00
demo docs: update ibc 2017-02-07 20:35:43 -05:00
docs Added some notes on basecoin intro 2017-02-10 16:40:53 -05:00
plugins Merge pull request #22 from tendermint/docs 2017-02-07 20:41:04 -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 Change ABCI app to implement abci.BlockchainAware interface 2017-02-04 15:09:16 -08: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 Added some notes on basecoin intro 2017-02-10 16:40:53 -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 -u github.com/tendermint/basecoin
cd $GOPATH/src/github.com/tendermint/basecoin
git checkout develop # (until we release 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 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.