alexkohler / status-go

The Status module that consumes go-ethereum

Home Page:https://status.im

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Status bindings for go-ethereum

TravisCI Builds GoDoc Master Build Status Develop Build Status

Docs

Intro

status-go is an underlying part of Status - a browser, messenger, and gateway to a decentralized world.

It's written in Go and requires Go 1.8 or above.

It uses Makefile to do most common actions. See make help output for available commands.

status-go uses forked ethereum-go with some changes in it, located under vendor/ dir.

Build

There are two main modes status-go can be built:

  • standalone server
  • library to link for Android or iOS

Use following Makefile commands:

  • make statusgo (builds binary into build/bin/statusd)
  • make statusgo-android) (builds .aar file build/android-16/aar)
  • make statusgo-ios and make statusgo-ios-simulator (builds iOS related artifacts in build/os-9.3/framework)

Testing

To test statusgo, use: make ci. To test statusgo using a giving network by name, use: make ci networkid=rinkeby. To test statusgo using a giving network by id number, use: make ci networkid=3.

If you want to launch specific test, for instance RPCSendTransactions, use the following command:

./build/env.sh go test -v ./geth/api/ -testify.m ^RPCSendTransaction$

Note -testify.m as testify/suite is used to group individual tests.

Licence

Mozilla Public License 2.0

About

The Status module that consumes go-ethereum

https://status.im

License:Mozilla Public License 2.0


Languages

Language:Go 87.4%Language:JavaScript 6.5%Language:Shell 4.1%Language:Makefile 1.0%Language:C 0.6%Language:Groovy 0.3%