Ellipsis is composed of the following core contracts:

  • StableSwap is a fork of Curve's stableswap contract, and the main focus of the protocol. Users deposit stablecoins into the contract, for which they receive LP tokens.

  • LpTokenStaker allows users to stake their LP tokens in order to earn EPS, the token that powers the Ellipsis protocol.

  • Rewarded EPS is minted within EpsStaker. Users can also deposit EPS in this contract in order to receive a portion of the trade fees generated by the exchange contracts.

  • MerkleDistributor is used to handle the ongoing airdrop of EPS to the Curve community.

Source code for these contracts is available on Github.