Aegis Chain is a Layer 1 blockchain in the Pell ecosystem, featuring dual compatibility with CosmWasm and EVM virtual machines. It enables omnichain capabilities, generic smart contracts and cross-chain messaging between any blockchain.
- Go 1.23.2
- Docker and Docker Compose (optional, for running tests locally)
- buf (optional, for processing protocol buffer files)
- jq (optional, for running scripts)
Aegis Chain is built with Cosmos SDK, a modular framework for building blockchain and Ethermint, a module that implements EVM-compatibility.
- aegis (this repository)
contains the source code for the Aegis Chain node (
aegisd) and the Aegis Chain relayer (aegisclientd). - protocol-contracts contains the source code for the Solidity smart contracts that implement the core functionality of Aegis Chain.
For the Ignite testnet, clone this repository, checkout the latest release tag, and type the following command to build the binaries:
make install
to build.
This command will install the pellcored and pellclientd binaries in your
$GOPATH/bin directory.
Verify that the version of the binaries match the release tag.
pellcored version
pellclientd version
After making changes to any of the protocol buffer files, run the following command to generate the Go files:
make proto
This command will use buf to generate the Go files from the protocol buffer
files and move them to the correct directories inside x/. It will also
generate an OpenAPI spec.
To generate the documentation, run the following command:
make specs
This command will run a script to update the modules' documentation. The script
uses static code analysis to read the protocol buffer files and identify all
Cosmos SDK messages. It then searches the source code for the corresponding
message handler functions and retrieves the documentation for those functions.
Finally, it creates a messages.md file for each module, which contains the
documentation for all the messages in that module.
To check that the source code is working as expected, refer to the manual on how to run the E2E test.