a secure, transparent, and peer-to-peer cloud computing network
Akash is a secure, transparent, and decentralized cloud computing marketplace that connects those who need computing resources (tenants) with those that have computing capacity to lease (providers).
For a high-level overview of the Akash protocol and network economics, check out the whitepapers; a detailed protocol definition can be found in the design documentation; and the target workload definition spec is here.
masterbranch contains new features and is under active development; the
mainnet/mainbranch contains the current, stable release.
v0.8.0) and be cut from the
v0.9.0) and be cut from the
Akash Suite is the reference implementation of the Akash Protocol. Akash is an actively-developed prototype currently focused on the distributed marketplace functionality.
The Suite is composed of one binary,
akash, which contains a (tendermint-powered) blockchain node that implements the decentralized exchange as well as client functionality to access the exchange and network data in general.
The easiest way to get started with Akash is by following the Quick Start Guide to get started.
|Linux||arm64 (aka aarch64)||✅ Supported|
|Linux||armhf GOARM=5,6,7||⚠️ Not supported|
$ brew tap ovrclk/tap $ brew install akash
$ curl -sSfL https://raw.githubusercontent.com/ovrclk/akash/master/godownloader.sh | sh
Or install a specific version with GoDownloader
$ curl -sSfL https://raw.githubusercontent.com/ovrclk/akash/master/godownloader.sh | sh -s -- v0.7.8
Akash is written in Golang and is Apache 2.0 licensed - contributions are welcomed whether that means providing feedback, testing existing and new feature or hacking on the source.
To become a contributor, please see the guide on contributing
$PATH. It is also required to have C/C++ compiler installed (gcc/clang) as there are C dependencies in use (libusb/libhid) Akash build process and examples are heavily tied to Makefile.
.cacheto hold all temporary files and tools (except kind which installed ) required for development purposes. It is possible to set custom path to
AKASH_DEVCACHEenvironment variable. All tools are referred as
makefile targetsand set as dependencies thus installed (to
.cache/bin) only upon necessity. For example
protocinstalled only when
Command below will compile akash executable and put it into
shell make akash # akash is set as default target thus `make` is equal to `make akash`once binary compiled it exempts system-wide installed akash within akash repo
We use thin integration testing environments to simplify the development and testing process. We currently have three environments: