cosmos-sdk/README.md

58 lines
2.4 KiB
Markdown
Raw Normal View History

2017-01-26 13:48:54 -08:00
# Basecoin
DISCLAIMER: Basecoin is not associated with Coinbase.com, an excellent Bitcoin/Ethereum service.
2017-02-08 04:18:26 -08:00
Basecoin is an [ABCI application](https://github.com/tendermint/abci) designed to be used with the [tendermint consensus engine](https://tendermint.com/) to form a Proof-of-Stake cryptocurrency.
2017-02-03 18:17:11 -08:00
It also provides a general purpose framework for extending the feature-set of the cryptocurrency
by implementing plugins.
2017-01-26 13:48:54 -08:00
2017-02-03 18:17:11 -08:00
Basecoin serves as a reference implementation for how we build ABCI applications in Go,
2017-02-08 04:18:26 -08:00
and is the framework in which we implement the [Cosmos Hub](https://cosmos.network).
2017-02-03 18:17:11 -08:00
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.
2017-01-26 13:48:54 -08:00
2017-02-03 18:17:11 -08:00
WARNING: Currently uses plain-text private keys for transactions and is otherwise not production ready.
2017-01-26 13:48:54 -08:00
## Installation
2017-02-10 13:40:20 -08:00
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:
2017-01-26 13:48:54 -08:00
```
cd $GOPATH/src/github.com/tendermint/basecoin
2017-02-10 13:40:20 -08:00
git checkout develop # (until we release tendermint v0.9)
2017-01-26 13:48:54 -08:00
make get_vendor_deps
make install
```
2017-01-29 12:43:30 -08:00
This will create the `basecoin` binary in `$GOPATH/bin`.
2017-01-28 12:19:30 -08:00
2017-02-10 13:40:20 -08:00
2017-02-03 18:17:11 -08:00
## Command Line Interface
2017-02-03 18:17:11 -08:00
The basecoin CLI can be used to start a stand-alone basecoin instance (`basecoin start`),
2017-01-29 12:48:28 -08:00
or to start basecoin with tendermint in the same process (`basecoin start --in-proc`).
2017-02-07 13:12:18 -08:00
It can also be used to send transactions, eg. `basecoin tx send --to 0x4793A333846E5104C46DD9AB9A00E31821B2F301 --amount 100`
2017-01-29 12:48:28 -08:00
See `basecoin --help` and `basecoin [cmd] --help` for more details`.
2017-02-03 18:17:11 -08:00
## Learn more
2017-01-29 15:23:50 -08:00
2017-02-03 18:17:11 -08:00
1. Getting started with the [Basecoin tool](/docs/guide/basecoin-basics.md)
1. Learn more about [Basecoin's design](/docs/guide/basecoin-design.md)
2017-02-07 13:12:18 -08:00
1. Extend Basecoin [using the plugin system](/docs/guide/example-plugin.md)
2017-02-03 18:17:11 -08:00
1. Learn more about [plugin design](/docs/guide/plugin-design.md)
1. See some [more example applications](/docs/guide/more-examples.md)
2017-02-04 21:43:55 -08:00
1. Learn how to use [InterBlockchain Communication (IBC)](/docs/guide/ibc.md)
2017-02-03 18:17:11 -08:00
1. [Deploy testnets](deployment.md) running your basecoin application.
2017-01-29 15:23:50 -08:00