-
CCIP Rebase Token: A protocol that allow users to deposit into a vault and in return, receive rebase tokens that represents their underlying balance.
-
Rebase token -> dynamic balanceOf() to show changing balance with time.
- Balance increases linearly with time
- Mint token to users everytime an action is perform (minting, burning, transferring, bridging)
-
Interest rate: Rate at which the balance is increasing linearly with time
-
Token Contract
- The core ERC-20 token with rebase (elastic supply) logic
- Automatically adjusts token balances over time to reflect interest accrual
-
Pool Contract
- Manages liquidity and cross-chain transfers
- An intermediary to safely "lock/burn" tokens on the source chain and "release/mint" on the destination chain
-
Vault Contract
- Acts as the collateral manager or "entry/exit gate" for the protocol
- Collateral vault for ETH deposits/withdrawals
-
Deployment Script
- Deployment script for creating Rebase Token and Pool contracts on Sepolia Eth and ZKSync Sepolia.
- Deployment script for creating Vault contract on Sepolia Eth.
- Owners can set themselves the role of "MINT_AND_BURN_ROLE"
- A user can initally deposit into to get a more preferred higher interest rate, then some time later, in order not to get a new lower interest rate when depositing more (interest rate will be reduced over time), the user would be able to use a second wallet to send over the deposit, thereby, retaining the higher interest rate.
