Skip to content

Commit

Permalink
Merge pull request #140 from ubclaunchpad/139-dep-distribution-n-docs
Browse files Browse the repository at this point in the history
CLI distribution, dep, and README update
  • Loading branch information
bobheadxi committed May 13, 2018
2 parents c281f18 + e5f6964 commit 3bb0635
Show file tree
Hide file tree
Showing 10 changed files with 331 additions and 141 deletions.
14 changes: 14 additions & 0 deletions .scripts/release.sh
@@ -0,0 +1,14 @@
#!/bin/sh
# This script cross-compiles binaries for various platforms

# Download our release binary builder
go get -u github.com/mitchellh/gox

# Specify platforms and release version
PLATFORMS="linux/amd64 linux/386 darwin/386 windows/amd64 windows/386"
RELEASE=$(git describe --tags)
echo "Building release $RELEASE"

# Build Inertia Go binaries for specified platforms
gox -output="cumulus.$(git describe --tags).{{.OS}}.{{.Arch}}" \
-osarch="$PLATFORMS" \
Binary file added .static/create-transaction.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 9 additions & 5 deletions .travis.yml
@@ -1,11 +1,15 @@
language: go
sudo: false
go:
- 1.7
- '1.10'

before_install:
- go get github.com/mattn/goveralls
- go get github.com/mattn/goveralls
- go get github.com/golang/dep/cmd/dep

install:
- make install-glide
- make deps
- dep ensure

script:
- $HOME/gopath/bin/goveralls -service=travis-ci
- go test -coverprofile=coverage.out ./...
- goveralls -coverprofile=coverage.out -service=travis-ci
189 changes: 189 additions & 0 deletions Gopkg.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

46 changes: 46 additions & 0 deletions Gopkg.toml
@@ -0,0 +1,46 @@
# Gopkg.toml example
#
# Refer to https://github.com/golang/dep/blob/master/docs/Gopkg.toml.md
# for detailed Gopkg.toml documentation.
#
# required = ["github.com/user/thing/cmd/thing"]
# ignored = ["github.com/user/project/pkgX", "bitbucket.org/user/project/pkgA/pkgY"]
#
# [[constraint]]
# name = "github.com/user/project"
# version = "1.0.0"
#
# [[constraint]]
# name = "github.com/user/project2"
# branch = "dev"
# source = "github.com/myfork/project2"
#
# [[override]]
# name = "github.com/x/y"
# version = "2.4.0"
#
# [prune]
# non-go = false
# go-tests = true
# unused-packages = true


[[constraint]]
name = "github.com/google/uuid"
version = "0.2.0"

[[constraint]]
name = "github.com/spf13/viper"
version = "1.0.0"

[[constraint]]
name = "github.com/stretchr/testify"
version = "~1.1.4"

[[constraint]]
name = "gopkg.in/kyokomi/emoji.v1"
version = "1.5.0"

[prune]
go-tests = true
unused-packages = true
10 changes: 3 additions & 7 deletions Makefile
@@ -1,23 +1,19 @@
.PHONY: test deps clean install_glide

PACKAGES = `go list ./... | grep -v vendor/`

all: cumulus

cumulus:
go build

test:
go test $(PACKAGES) --cover
go test ./... --cover

run-console: cumulus
./cumulus run -c

deps:
glide install
go get -u github.com/golang/dep/cmd/dep
dep ensure

clean: cumulus
rm -f cumulus blockchain.json user.json logfile

install-glide:
sh scripts/install_glide.sh
83 changes: 70 additions & 13 deletions README.md
@@ -1,29 +1,86 @@
# Cumulus
<p align="center">
<img src="/.static/create-transaction.png" width="50%"/>
</p>

Crypto-currency that doesn't waste your time.
<div align="center">
<h1>Cumulus 💸</h1>
</div>

[![ZenHub](https://raw.githubusercontent.com/ZenHubIO/support/master/zenhub-badge.png)](https://zenhub.com)
[![Coverage Status](https://coveralls.io/repos/github/ubclaunchpad/cumulus/badge.svg?branch=dev)](https://coveralls.io/github/ubclaunchpad/cumulus?branch=dev)
[![Build Status](https://travis-ci.org/ubclaunchpad/cumulus.svg?branch=dev)](https://travis-ci.org/ubclaunchpad/cumulus)
[![GoDoc](https://godoc.org/github.com/golang/gddo?status.svg)](https://godoc.org/github.com/ubclaunchpad/cumulus)
<p align="center">
Cryptocurrency that doesn't waste your time.
</p>

<p align="center">
<a href="https://travis-ci.org/ubclaunchpad/cumulus">
<img src="https://travis-ci.org/ubclaunchpad/cumulus.svg?branch=dev" alt="Build Status" />
</a>

<a href="https://coveralls.io/github/ubclaunchpad/cumulus?branch=dev">
<img src="https://coveralls.io/repos/github/ubclaunchpad/cumulus/badge.svg?branch=dev" alt="Coverage" />
</a>

<a href="https://godoc.org/github.com/ubclaunchpad/cumulus">
<img src="https://godoc.org/github.com/golang/gddo?status.svg" alt="GoDocs" />
</a>

<a href="https://goreportcard.com/report/github.com/ubclaunchpad/cumulus">
<img src="https://goreportcard.com/badge/github.com/ubclaunchpad/cumulus" alt="Clean code" />
</a>

<a href="https://zenhub.com">
<img src="https://img.shields.io/badge/Shipping_faster_with-ZenHub-5e60ba.svg?style=flat" alt="Shipping faster with ZenHub" />
</a>
</p>

<br>

## Introduction

At [UBC Launch Pad](http://www.ubclaunchpad.com) we’ve been interested in crypto-currency and blockchain tech for a while now, and after several months of experimentation we’re excited to announce our latest project. Cumulus is a new cryptocurrency with its own blockchain and token. The current command line interface allows users to create wallets, mine coins, and send funds to other users.

There are a lot of cryptocurrencies out there already, so it’s a fair question to ask what makes Cumulus special over other, more entrenched currencies like Bitcoin and Ethereum. The short answer is because we’re all excited by the possibilities created by this technology! In addition, there are many problems in the blockchain space that remain to be solved. Other cryptocurrencies have significant downsides like small block sizes and vast computation waste spent securing the network. We are addressing many of these problems in Cumulus. Beyond that, we see massive opportunities in this space in the years to come. Cumulus is the infrastructure on which we can build in the blockchain space as it matures.

You can read more about Cumulus in the [Medium post introducting the project](https://medium.com/ubc-launch-pad-software-engineering-blog/introducing-cumulus-940456b7e05c) as well as the [extensive wiki documentation](https://github.com/ubclaunchpad/cumulus/wiki).

## Installation

Install dependencies. We need to manually use version 0.11.1 of Glide temporarily because 0.12 introduced a bug in recursive dependencies.
**MacOS** - the Cumulus CLI can be installed using [Homebrew](https://brew.sh):

Install Glide.
```sh
make install-glide
```bash
brew install ubclaunchpad/tap/cumulus
```

Get dependencies.
**Windows** - the Cumulus CLI can be installed using [Scoop](http://scoop.sh):

```bash
scoop bucket add ubclaunchpad https://github.com/ubclaunchpad/scoop-bucket
scoop install cumulus
```

You can check the installation and see the Cumulus CLI documentation by running:

```bash
cumulus --help
```

## Building

First, [install Go](https://golang.org/doc/install#install) and grab the Cumulus source code:

```bash
go get -u github.com/ubclaunchpad/cumulus
```

Cumulus uses [dep](https://github.com/golang/dep) for dependency management. The following will install dep and run `dep ensure`:

```sh
make deps
```

Build.
You can now build and run Cumulus:

```sh
make
make run-console
```

## Testing
Expand Down

0 comments on commit 3bb0635

Please sign in to comment.