Contract Overview
Contracts are broken into modules. Each module is independent in terms of state and do not have coupling with other modules (mostly). We try to build on-top of existing and battle tested contract codes where possible, and avoid coupling of contracts by having clear separation of concern between each contract. This is to avoid introducing unnecessary contract complexities as well as to enable easier testing and auditing process.

Token Module

The token module consists of contracts for the Aladdin Token and its distribution.


Standard ERC20 contract with minter role.


Modified version of Sushiswap's ChefMaster that allows staking and distribution of ALD.

Farm Module

The farm module is the yearn style yield farming system.


User facing vaults for deposit and withdraw of funds. Vault is an ERC20 token which represent the share an user have of the vault. It is minted and burned during deposit and withdraw.


Controller stores data and mapping information between Vault and Strategy pairs. Each vault is mapped to a single strategy, and vice versa.


Yield generating strategies for Vaults.

Reward Module

The reward module contains helps to distribute project token rewards. It is done through a multi-staking rewards contract.


Standard Uniswap style staking reward contracts with modification for allowing multiple reward tokens.

DAO Module

Contracts for DAO and treasury.


The DAO contract takes a want token in exchange for shares of the DAO at a specific rate. DAO is an ERC20 token where the balance represents shares of the DAO.


Simple treasury that takes token and ETH and allows governance role to withdraw.


The AladdinDAO Contract uses the Multisig mechanism, and Multisig safe owners and addresses will be announced at later.
Last modified 4mo ago