Skip to content
Sozu Mantle MultiFaucet

Sozu Mantle MultiFaucet

A merit-based multifaucet (drips MNT, wMNT, Dai, and NFTs) built-on Mantle, rewarding on-chain activity and contributions via higher token drips.

Created on 19th July 2023

Sozu Mantle MultiFaucet

Sozu Mantle MultiFaucet

A merit-based multifaucet (drips MNT, wMNT, Dai, and NFTs) built-on Mantle, rewarding on-chain activity and contributions via higher token drips.

The problem Sozu Mantle MultiFaucet solves

Every web3 developer, at some point in their career, has struggled to obtain testnet tokens for a new chain they're developing for. This is due in part to misaligned incentives - since testnet tokens now have financial value (as many can be bridged to Goerli, which has financial value), bots often Sybil attack faucets to acquire a large sum of tokens to later sell or just keep.
This leads to developers not being able to get the tokens they need to do testing/deployments and faucets being completely drained.

This multifaucet solves the problem of unfair testnet token distribution. How? Well, Sozu Multifaucet verifies on-chain credentials, contributions, and activity to assure that the tokens go to the people that will use them best. The more "merit" an address has (based on their on-chain history, such as POAPs or ENS domains), the more tokens they can drip from the faucet every 24 hours. Additionally, Sozu Multifaucet uses zkMe to increase Sybil resistance against the aforementioned bad actions who would otherwise drain the faucet immediately.

As a faucet, Sozu Multifaucet is fully featured - we immediately drip MNT, wMNT, DAI, and 10 NFTs to developers so they can get started developing on Mantle immediately, no matter what they need to adequately test their protocols.

Sozu MultiFaucet makes it easier for the people who deserve the testnet tokens to receive them.

Challenges we ran into

A challenge we ran through was with how the zkMe modal was rendered. We used zkMe for proof-of-humanity in the faucet for sybil-resistance. An issue was that the zkMe modal lacks SSR support, so it wouldn't work if we kept server-side rendering. SSR allowed us to have much faster load times, SEO, and preloaded web pages. So instead of making the whole page client-rendered and losing this optimization, we dynamically loaded the zkMe modal to be rendered in the client whilst our app would be rendered server-side. In addition to that, the zkMe modal would only be rendered when needed to not slow down people already verified. Allowing us to keep the benefits of SSR and use zkMe.

Discussion

Builders also viewed

See more projects on Devfolio