Multi-chain Deployment of levx.io
LevX
Motivation
L2 wars seem to have already begun and the public release of zkSync will inflame it. So, levx.io is going to expend to L2s as well not only Ethereum.
Specification
The protocol is designed for multi-chain support and in the beginning, it'll be deployed on 2 chains: Ethereum and zkSync. We'll call zkSync the hub chain.
By the way, contracts deployed on two chains are not identical and they have different usages. The hub chain is where GaugeController resides, which means actual voting happens here and it records all the weights of voted users on each NFTs.
NFTGaugeFactory will be deployed on multi chains so NFT holders can stake it on their own chain, without moving the assets. Ethereum NFTs will be staked only on Ethereum and zkSync ones only on zkSync, etc.
But voting works a little bit differently. Since GaugeController only exists on the hub chain, users vote for a specific NFTGauge on their own chain, then the voting result is automatically sent to the hub chain to finally get recorded on GaugeController. We use LayerZero technology for inter-chain communication.
Minter is only on the hub chain as well and new OGZ will only be minted on this chain. For votes happened outside of the hub chain, the rewards(OGZ) will be sent to the voter's wallet on their own chain.
VotingEscrow will be deployed on each chain as well so in any chain, you can lock up your OGZ and receive voting power. Even though contracts are separated on different chains, voting power of 1 veOGZ is equivalent in any chain. From whichever chain you are on, if you vote 1 veOGZ then it'll be recorded as the same 1 veOGZ on the hub chain.
Expectated Result
- Voters can save gas to almost 1/100 because voting happens on L2
- Users of new NFTs on zkSync can onboarded easily
- We can ride the waves of zkSync in terms of marketing
Conclusion
I believe zkSync will be the best choice if we deploy to another L2 and that's why I call it the hub chain so that heavy computation happens there. But if you have other ideas, let me know.
We could deploy on Arbitrum, Optimism, BNB chain, Avalanche, Fantom, etc.
Beami
zkSync, Arbitrum and Optimism are my favourites
Cookies LEVX
I think zkSync is a great choice, in the future Arbitrum and Optimism will be good options for expansion as well.
loki89.eth
I'd pick Zksync or Arbitrum, but migrating to a L2 is inevitable. Can't go wrong with either of those imo, but Arbi has already shown a lot more potential than zksync for the time being.
rainŌh..Geez
from ur explanation on hub chain, does that mean we are flexible to deploy on more than 1 L2? by means, if deployment on zksync is successful, we can grow on other chains' NFTs as well? would that benefit us from inviting more users to onboard in levx.io multichain..
Im all down for deploying on zksync!
LevX
rainŌh..Geez: if we choose zkSync as our hub chain, then it gets fixed. Even though levx.io deploys to multi L2s, NFTGauges on other L2s will pass the voting result to zkSync's GaugeController