iotex-core

module
v0.5.0-rc7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 28, 2019 License: Apache-2.0

README

iotex-core

Go version CircleCI Go Report Card Coverage Godoc Releases LICENSE

Welcome to the official Go implementation of IoTeX protocol! IoTeX is building the next generation of the decentralized network for IoT powered by scalability- and privacy-centric blockchains. Please refer to IoTeX whitepaper for details.

Get started

Minimum requirements
Components Version Description
Golang ≥ 1.11.5 Go programming language
Dep ≥ 0.5.0 Dependency management tool, required only when you update dependencies
Protoc ≥ 3.6.0 Protocol buffers, required only when you rebuild protobuf messages
Get iotex-core

The easiest way to get iotex-core is to use one of release packages which are available for OSX, Linux on the release page. Iotex-core is also distributed via docker image on docker hub.

Build iotex-core from code

Download the code by

mkdir -p ~/go/src/github.com/iotexproject
cd ~/go/src/github.com/iotexproject
git clone git@github.com:iotexproject/iotex-core.git
cd iotex-core

Build the project by

make

If the dependency needs to be updated, run

dep ensure [--vendor-only]

Run unit tests only by

make test

Build the docker image by

make docker
Run iotex-core

Start (or resume) a standalone server to operate on an blockchain by

make run

Restart the server from a clean state by

make reboot

If "make run" fails due to corrupted or missing state database while block database is in normal condition, e.g., failing to get factory's height from underlying DB, please try to recover state database by

make recover

Then, "make run" again.

Note that if your enviroment is in Linux, you need to add the share libraries into $LD_LIBRARY_PATH by

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$GOPATH/src/github.com/iotexproject/iotex-core/crypto/lib
Use CLI

Users could interact with iotex blockchain by

ioctl [command]

Refer to CLI document for more details.

Contact

Contribution

We are glad to have contributors out of the core team; contributions, including (but not limited to) style/bug fixes, implementation of features, proposals of schemes/algorithms, and thorough documentation, are welcomed. Please refer to our contribution guideline for more information. Development guide documentation is here.

License

This project is licensed under the Apache License 2.0.

Directories

Path Synopsis
bech32
Package bech32 includes a Bech32 string which is at most 90 characters long and consists of: The human-readable part, which is intended to convey the type of data, or anything else that is relevant to the reader.
Package bech32 includes a Bech32 string which is at most 90 characters long and consists of: The human-readable part, which is intended to convey the type of data, or anything else that is relevant to the reader.
cli
db
sql
idl/explorer
Code generated by idl2go from JSON generated by Barrister v0.1.6
Code generated by idl2go from JSON generated by Barrister v0.1.6
p2p
pkg
enc
lifecycle
Package lifecycle provides application models' lifecycle management.
Package lifecycle provides application models' lifecycle management.
log
itx
test
mock/mock_actioniterator
Package mock_actioniterator is a generated GoMock package.
Package mock_actioniterator is a generated GoMock package.
mock/mock_actpool
Package mock_actpool is a generated GoMock package.
Package mock_actpool is a generated GoMock package.
mock/mock_blockchain
Package mock_blockchain is a generated GoMock package.
Package mock_blockchain is a generated GoMock package.
mock/mock_blocksync
Package mock_blocksync is a generated GoMock package.
Package mock_blocksync is a generated GoMock package.
mock/mock_chainmanager
Package mock_chainmanager is a generated GoMock package.
Package mock_chainmanager is a generated GoMock package.
mock/mock_consensus
Package mock_consensus is a generated GoMock package.
Package mock_consensus is a generated GoMock package.
mock/mock_dispatcher
Package mock_dispatcher is a generated GoMock package.
Package mock_dispatcher is a generated GoMock package.
mock/mock_explorer
Package mock_explorer is a generated GoMock package.
Package mock_explorer is a generated GoMock package.
mock/mock_factory
Package mock_factory is a generated GoMock package.
Package mock_factory is a generated GoMock package.
mock/mock_lifecycle
Package mock_lifecycle is a generated GoMock package.
Package mock_lifecycle is a generated GoMock package.
mock/mock_trie
Package mock_trie is a generated GoMock package.
Package mock_trie is a generated GoMock package.
tools
addrgen
This is a testing tool to generate iotex addresses To use, run "make build" and " ./bin/addrgen"
This is a testing tool to generate iotex addresses To use, run "make build" and " ./bin/addrgen"
staterecoverer
This is a recovery tool that recovers a corrupted or missing state database.
This is a recovery tool that recovers a corrupted or missing state database.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL