sToken is a Liquid Staking rollup based token working on across multiple chains allowing users to bridge ETH from any chain, using HyperLane to get LST tokens in return. It also implements a reward mechanism using 1inch ERC20 Plugins.
Features
Important Notes
Possible Use Cases
I used stackr sdk for creating this project on AvailDA.
Key Components Include -
-- State Transition Functions (STFs)
Token Management
create
: Create a new accountmint
: Mint new tokensburn
: Burn existing tokenstransfer
: Transfer tokens between accountsapprove
: Approve spending allowancetransferFrom
: Transfer tokens on behalf of another accountBridging
requestBridge
: Initiate a bridge request from Rollup to L1fulfillBridge
: Complete a bridge requestAVL Staking
bridgeAVLtoApp
: Bridge AVL tokens to the Micro RollupclaimAVLAccount
: Claim an AVL accountrequestStakeAVL
: Request to stake AVL tokensfulfillStakeAVL
: Fulfill an AVL staking request--Tech Stack
-- 1inch Token Plugin
Users accumulate holding time for their sTokens. Longer hold times result in higher reward multipliers. Maximum multiplier (2x) achieved after one year of holding.
Contract owner can set and update the total reward pool. Rewards are distributed proportionally based on user balances and hold times.
Stores user balances, last update times, and accumulated holding times. Automatically updates user information on token transfers, mints, and burns.
Users can claim rewards based on their balance and accumulated hold time. Prevents double-claiming through a mapping of claimed status.