Avail is a data availability focused blockchain. Here is a list of GitHub repo tracking the various development efforts in this regard.
Name (with link) | Description |
---|---|
Reference Document | Document containing the overall rationale, design decisions and theoretical backgrounds |
Avail Node | Avail node implementation repo. Built using Substrate. |
Light Client | Light client designed to check data availability proofs on Avail. |
Explorer | Avail explorer implementation repo. Built using Polkadot apps. |
Documentation | Avail documentation hub. |
Tests | End to end tests for Avail. |
Suggestions and feedback welcome.
There are two main components in the Avail network:
- Avail Node: This forms the blockchain layer of Avail. It is built using Substrate, with modifications to specialize it for data availability. Apart from basic blockchain operations like balance transfer, validator staking, slashing and governance, it also contains methods for applications to submit data blobs. This network is secured by GRANDPA+BABE consensus engine, under the assumption that 2/3+ of the validator set is honest.
- Avail Light Client: The light clients (LC) form an overlay P2P network. Individually, all LCs subscribe to (finalized) headers of the chain. It performs Data Availability Sampling (DAS) to gain high confidence of DA. The LCs also host the sampled data on the P2P so that together the P2P network can have the entire data in a highly available manner.
To enable Validium constructions based on Ethereum, it is important to push data roots from Avail to Ethereum. We partner with Nomad for building the data attestation bridge. Overall, the architecture looks like as follows: