Iotex-core
제품 정보
오픈소스 사용 사례
공개 채팅
지원 계획
현재 사용할 수 있는 OSS 플랜이 없습니다.
저장소의 제공자 또는 기여자인 경우 OSS 플랜 추가를 시작할 수 있습니다.
OSS 플랜 추가이 오픈소스에 대한 플랜을 찾고 있다면 저희에게 문의해 주세요.
전문 공급자와 연락하실 수 있도록 도와드리겠습니다.
제품 세부 정보
iotex-core
Official Golang implementation of the IoTeX protocol, the modular DePIN Layer-1 network.
What is IoTeX?
IoTeX is the modular infrastructure for DePIN projects to deploy in full or integrate modules into existing frameworks. Please visit IoTeX homepage official website to learn more about IoTeX network.
What is DePIN?
DePIN stands for Decentralized Physical Infrastructure Networks, a new approach to building and maintaining physical world infrastructure. This infrastructure can range from WiFi hotspots in wireless networks to solar-powered home batteries in energy networks. DePINs are developed in a decentralized manner by individuals and companies globally, making them accessible to everyone. In return, contributors receive financial compensation and an ownership stake in the network they’re building and the services they provide through token incentives. DePINs are enabled by widespread internet connectivity and advancements in blockchain infrastructure and cryptography. To learn more about DePIN, please visit What is DePIN?.
Explore DePIN Projects?
DePIN Scan is the go-to explorer for DePIN projects. DePIN Scan tracks crypto token prices, real-time device data, and offers a variety of views for DePIN projects.
Run a delegate?
Please visit IoTeX Delegate Manual for detailed setup process.
Building the source code
Minimum requirements
Components | Version | Description |
---|---|---|
Golang | ≥ 1.18.5 | Go programming language |
Protoc | ≥ 3.6.0 | Protocol buffers, required only when you rebuild protobuf messages |
Compile
Download the code to your desired local location (doesn't have to be under $GOPATH/src
)
git clone git@github.com:iotexproject/iotex-core.git
cd iotex-core
If you put the project code under your $GOPATH\src
, you will need to set up an environment variable
export GO111MODULE=on
set GO111MODULE=on (for windows)
Build the project for general purpose (server, ioctl) by
make
Build the project for broader purpose (server, ioctl, injector...) by
make all
If the dependency needs to be updated, run
go get -u
go mod tidy
If you want to learn more advanced usage about go mod
, you can find out here.
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 a 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.
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.
For any major protocol level changes, we use IIP to track the proposal, decision and etc.
Contributors
Thank you for considering contributing to the IoTeX framework!
License
This project is licensed under the Apache License 2.0.