Skip to content
AionJayT edited this page Nov 11, 2020 · 19 revisions

Welcome to the Aion Wiki!

This wiki is a guide to using the Aion blockchain network.

Repository layout

The Aion implementation is distributed across multiple modules to allow for code reuse:

  • The Aion Core contains the main functionality of the Aion network and can be downloaded from the releases page.
  • The Aion FastVM is an enhanced Ethereum Virtual Machine provided as a separate module.
  • The Aion Miner repository contains code and documentation for mining blocks on the Aion blockchain.
  • The Aion Compatible Web3 Api repository provides a Web3 application programming interface for interacting with the Aion blockchain.
  • The Aion Java Api repository provides a java programming interface for interacting with the Aion blockchain.

Aion Core Repository Structure

  • .git*** The github repository settings.
  • mod*** The modular source code of the aion blockchain.
  • 3rdParty The 3rd party libraries source code for building the aion module dependent libraries.
  • DockerAutomation The settings of the Aion kernel docker image.
  • IdeEnv,eclipse The settings of the IDEs.
  • blockade The local network setup testing suite.
  • gradle* The gradle relate settings and executing files.
  • libs The dependent libraries of the Aion kernel including pre-built 3rd party libraries, AVM/FastVM libraries, and other supported module libraries.
  • native The native c/c++ dependent libraries of the Aion kernel.
  • Jenkinsfile The CI settings.
  • aion.sh The Aion kernel launch script.
  • script The scripts for building/packing the Aion kernel.
  • tooling The tooling for setup the Aion custom network and the staking block signer.
  • networks The default network setting of the Aion kernel including the genesis block, protocol settings and the kernel configs.

Modules

The Aion Core is jdk11 module based implementation:

  • The [modAionImpl] aion core unity protocol implementation.
  • The [modUtil] aion core common library.
  • The [modApiServer] aion core api daemon for aion binary api protocol and web3 protocol client.
  • The [modBoot] the boostrap lib for aion core.
  • The [modCrypto] the crypto library, include blake2b, sha, edcsa, ed25519 etc.
  • The [modDbImpl] blockchain key value database implementation, support levelDb, rocksdb, h2 and mongoDb.
  • The [modEvtMgr modEvtMgrImpl] event support framework for blockchain kernel.Ref link
  • The [modP2p modP2pImpl] peer to peer library support aion wire protocol.Ref link
  • The [modTxpool] blockchain transaction pool interface and implementation.Ref link
  • The [modRlp] RLP implemention , which is serialization solution for aion core..
  • The [modLogger] logger module.
  • The [modPrecompile] precompile contract module.Ref link
  • The [modBase] The blockchain base components use in the other aion modules
  • The [modAvmStub modAvmVersion1 modAvmversion2] The AVM bridge modules for linking the AVM libraries.

Resources

The Aion installation guide is available in the repository README.md file.

This wiki also contains documentation on:

Clone this wiki locally