Zilliqa is the world's first high-throughput public blockchain platform - designed to scale to thousands of transactions per second.
GPL-3.0 License
Zilliqa is a scalable smart contract platform that aims to tackle the congestion issue plaguing the blockchain industry. Zilliqa utilises a unique sharded architecture to achieve parallel processing of transactions while maintaining a large number of public nodes. Hence, Zilliqa is a blockchain capable of reaching high throughput and processing more complex computations while remaining decentralised and secure.
NOTE: The
master
branch is not for production as development is currently being worked constantly, please use thetag
releases if you wish to work on the version of Zilliqa client that is running live on the Zilliqa blockchain.
The current live version on the Zilliqa Mainnet is Zilliqa v9.2.3 and Scilla v0.13.3.
URL(s) | |
---|---|
API URL | https://api.zilliqa.com/ |
Block Explorer | Viewblock DEVEX |
The current live version on the Developer Testnet is Zilliqa v9.2.5 and Scilla v0.13.3.
URL(s) | |
---|---|
API URL | https://dev-api.zilliqa.com/ |
Block Explorer | Viewblock DEVEX |
Faucet | Link |
The Zilliqa Improvement Proposals (ZIPs) are the core protocol standards for the Zilliqa platform.To view or contribute to ZIP, please visit https://github.com/Zilliqa/zip
The current release has the following features implemented:
In the coming months, we plan to have the following features:
To run Zilliqa, we recommend the minimum system requirements specified in our Mining page.
Starting with Zilliqa v8.6.0, the officially supported operating system is Ubuntu 22.04.
If you'd like to experiment with a different distro (including the previously supported Ubuntu 18.04), please make sure to install gcc >= 11.
Run the following to install the build dependencies:
sudo apt-get update
sudo apt-get install autoconf \
build-essential \
ccache \
clang-format \
clang-tidy \
git \
lcov \
libcurl4-openssl-dev \
libssl-dev \
libtool \
libxml2-utils \
ninja-build \
ocl-icd-opencl-dev \
pkg-config \
python3-dev \
python3-pip \
libgmp-dev \
bison \
gawk
git submodule update --init --recursive
Run the following to install latest version of cmake. CMake version >= 3.19 must be used:
wget https://github.com/Kitware/CMake/releases/download/v3.19.3/cmake-3.19.3-Linux-x86_64.sh
mkdir -p "${HOME}"/.local
bash ./cmake-3.19.3-Linux-x86_64.sh --skip-license --prefix="${HOME}"/.local/
export PATH=$HOME/.local/bin:$PATH
cmake --version
rm cmake-3.19.3-Linux-x86_64.sh
To install, clone vcpkg to a separate location (do not use brew on macos):
$ git clone https://github.com/Microsoft/vcpkg.git /path/to/vcpkg
$ cd /path/to/vcpkg && git checkout 2022.09.27 && ./bootstrap-vcpkg.sh
$ cd /path/to/zilliqa
$ export VCPKG_ROOT=/path/to/vcpkg
As part of building our source code, we patch websocketpp 0.8.2 to compile on C++20; please see the license: https://github.com/zaphoyd/websocketpp/blob/master/COPYING.
Build Zilliqa from the source:
# build Zilliqa binary
$ ./build.sh
If you want to contribute by submitting code changes in a pull request perform the build with clang-format
and clang-tidy
enabled by doing:
$ ./build.sh style
The Zilliqa client works together with Scilla for executing smart contracts. Please refer to the Scilla repository for build and installation instructions.
Run the local testnet script in build
directory:
$ cd build && ./tests/Node/pre_run.sh && ./tests/Node/test_node_lookup.sh && ./tests/Node/test_node_simple.sh
Logs of each node can be found at ./local_run
To terminate Zilliqa:
$ pkill zilliqa
This is similar to the above, but deploys a local testnet to a local minikube cluster.
You can find documentation on how to do this on your local machine in docs/localdev.md
.
You can find scripts which will set up an Ubuntu 22.04 machine in the cloud (or install necessary dependencies on your machine) in docs/setup/README.md
.
Link(s) | |
---|---|
Development discussion (discord) | |
Bug report | |
Security contact |
security 🌐 zilliqa.com
|
Security bug bounty | HackerOne bug bounty |