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.
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 |
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.
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
Start (or resume) a standalone server to operate on an blockchain by
make run
Restart the server from a clean state by
make reboot
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:$GOPATH/src/github.com/iotexproject/iotex-core/crypto/lib/blslib
Users could interact with iotex blockchain by
ioctl [command]
Refer to CLI document for more details.
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.
This project is licensed under the Apache License 2.0.