|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|
| START |
|________________|
║
║
Sender
║
║
|¯¯¯¯¯¯¯¯¯| |¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯| |¯¯¯¯¯¯¯¯¯¯|
| End |----------NO----------|Is in whitelist?|----------YES----------| Mint |
|_________| |________________| |__________|
An allowlist for NFTs is essentially a roster of wallet addresses that are granted the privilege of minting NFTs before a general release of a collection. There are several means of being added to an allowlist, but the primary one is engaging in an NFT project's community.
This smart contract provides a secure and transparent way to manage whitelist access for minting NFTs.
-
Fair and secure NFT distribution: Prioritize specific users (e.g., early supporters, community members) by granting them exclusive access to mint NFTs before the public sale.
-
Reduce gas fee: Reduce transaction fees by limiting initial minting to whitelisted addresses.
-
Increase community engagement: Encourage participation in community activities or social media engagement as criteria for whitelisting.
-
Transparency and immutability: All whitelist data is stored on the blockchain, ensuring tamper-proof records and open visibility.
- Owner of the contract is not able to do CUD (create, update, and delete)
- Owner of the contract is not able to pause the whitelist
On LUKSO, users currently get a free monthly quota of 20.000.000 GAS when creating a Universal Profile through the Universal Profile Browser Extension[1].
- Whitelist management:
- Add and remove addresses from the whitelist by the whitelist manager.
- Make pausaable whitelist
- Minting control:
- Only whitelisted addresses can mint NFTs during the designated mint period.
- Set limits on the number of NFTs each whitelisted address can mint.
- Security:
- Access control ensures only authorized manager can manage the whitelist.
- Re-entrancy attacks are prevented using standard security practices.
git clone https://github.com/web3senior/whitelistfactory
cd whitelistfactory
npm run test
➜ ready for deploying💥
Lukso: contract address 0x5c2C28e2b3C74E8bAeF0B7504f1f4CE5cEd14Dd0
view on explorer
We will be adding more networks soon.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
- Different whitelisting criteria can be implemented (e.g., holding specific tokens, participating in events).
- [1] Lukso
Distributed under the MIT License.