Created by Icebreaker for ETHDenver 2023. Sharing the source code for other builders to easily launch simple NFT drops in a mobile-minting friendly dapp format.
Note that the current linked contract only allows minting from a single allowlisted address. See installation section for details.
Video demo: https://youtu.be/1ItxFtNBWSM
To get a local copy up and running follow these simple steps.
This is an example of how to list things you need to use the software and how to install them.
- yarn
- Node.js v18+
-
Fork and clone the repo
git clone https://github.com/icebreakerlabs/protobreaker.git
-
Install npm packages
yarn
-
Start the development server
yarn dev
-
Create your own versions of the NFT smart contract and typeform, then update the app to point to the new addresses
- Go to thirdweb and deploy your own contract on testnet and mainnet, and upload all the NFTs and claim conditions. Update the contract addresses in utils/env.ts. Please note that the chains are currently hardcoded for goerli and mainnet, so if you're deploying on other chains, you'll need to update those settings in env.ts. Also components/NftCard.tsx hardcodes the opensea links to ethereum so you may need to update that parameter if your main contract is not on ethereum mainnet.
- Ensure that you have allowlisted the wallet you plan on minting from on thirdweb in its claim conditions.
- Update the typeform ID to use your own typeform. Make sure you've configured hidden fields of @address and @owner from the "Advanced" settings in the share tab. You can get the ID by simply looking at the parameter xxxxx in the url on that admin page at https://admin.typeform.com/form/xxxxx/share.
Anyone who's interested in easily deploying their own NFT contract and minting app, which others can view.
None. We released this app for fun at ETHDenver 2023. However, we at some point do intend to demonstrate how this looks when deployed on other chains and using a relayer. This app was originally forked from the thirdweb signaturedrop contract, so it also has an api to support signature-based minting, though this feature is not currently enabled in the protobreaker app.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the project
- Create your feature branch (
git checkout -b feat/your-feature
) - Commit your changes (
git commit -m 'feat: Add some feature'
) - Push to the branch (
git push origin feat/your-feature
) - Open a pull request
Distributed under the MIT license. See LICENSE.md
for more information.
You can reach us at opensource at icebreaker.xyz.