Go to file
Ethan Frey 159574db89 Move ChainID into context 2017-07-03 17:32:01 +02:00
app Move ChainID into context 2017-07-03 17:32:01 +02:00
cmd Move ChainID into context 2017-07-03 17:32:01 +02:00
docs Cleaned up logger on constructors in App, State 2017-07-03 16:54:47 +02:00
errors Complete error package overhaul 2017-07-03 14:50:33 +02:00
modules Move ChainID into context 2017-07-03 17:32:01 +02:00
plugins/ibc ibc: UpdateChain fix blockid 2017-06-22 20:32:22 -04:00
publish Renamed scripts to publish for clarify, it is just for publishing releases 2017-06-30 18:34:19 +02:00
stack Move ChainID into context 2017-07-03 17:32:01 +02:00
state Cleaned up logger on constructors in App, State 2017-07-03 16:54:47 +02:00
tests Cleaned up logger on constructors in App, State 2017-07-03 16:54:47 +02:00
txs NewXYZTx returns Tx already wrapped, except for sigs 2017-07-03 15:01:28 +02:00
types Fix up the tx parsing for chain ids in address 2017-06-30 18:30:02 +02:00
version Version bump and changelog 2017-06-28 13:20:54 +02:00
.gitignore Add vagrantfile so i can build dist on osx (docker) 2017-06-29 14:44:34 +02:00
CHANGELOG.md Version bump and changelog 2017-06-28 13:20:54 +02:00
Dockerfile Dockerfile and Dockerfile.dev for development 2017-03-14 16:15:03 +04:00
Dockerfile.dev add jq to Dockerfile.dev [ci skip] 2017-06-23 12:13:29 +04:00
LICENSE Add Apache2.0 license 2016-09-10 15:53:15 -07:00
Makefile Remove references to IBC from binaries 2017-07-03 16:47:03 +02:00
README.md Update README.md 2017-04-30 16:50:14 -07:00
RELEASE.md Update RELEASE from learning from 0.6.0 2017-06-23 11:10:32 +02:00
ROADMAP.md Add thoughts on a release process 2017-06-22 13:04:47 +02:00
Vagrantfile Add vagrantfile so i can build dist on osx (docker) 2017-06-29 14:44:34 +02:00
_gen.go Start tx holder with gen 2017-06-30 18:37:47 +02:00
circle.yml circle fix, minor IBC tutorial 2017-06-29 05:52:07 -04:00
context.go Move ChainID into context 2017-07-03 17:32:01 +02:00
glide.lock Version bump and changelog 2017-06-28 13:20:54 +02:00
glide.yaml Version bump and changelog 2017-06-28 13:20:54 +02:00
handler.go Move middleware interface into stack, testable handlers 2017-06-30 18:37:50 +02:00
tx.go Move ChainID into context 2017-07-03 17:32:01 +02:00
tx_test.go Clean up error handling 2017-06-30 18:37:48 +02:00
txinner_wrapper.go Start tx holder with gen 2017-06-30 18:37:47 +02: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.

Prerequisites

Install and setup Golang.

Installation

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

See the install guide for more details.

Guide

  1. Getting started with the Basecoin basics
  2. Learning to use the plugin system
  3. More features of the Basecoin tool
  4. Learn how to use InterBlockchain Communication (IBC)
  5. See more examples

To deploy a testnet, see our repository of deployment tools.