diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc20_claimable.png b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc20_claimable.png new file mode 100644 index 00000000000..4df55fd9780 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc20_claimable.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc20_transferable.png b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc20_transferable.png new file mode 100644 index 00000000000..769e5799411 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc20_transferable.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_batchmetadata.png b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_batchmetadata.png new file mode 100644 index 00000000000..3c2ea697e4b Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_batchmetadata.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_mintable.png b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_mintable.png new file mode 100644 index 00000000000..b1ad9013b82 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_mintable.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_openedition.png b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_openedition.png new file mode 100644 index 00000000000..68e7480f91e Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_openedition.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_royalty.png b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_royalty.png new file mode 100644 index 00000000000..78a5f6b5af7 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_royalty.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_transferable.png b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_transferable.png new file mode 100644 index 00000000000..338d9f0a072 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/assets/erc721_transferable.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/assets/edition_drop_step1.png b/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/assets/edition_drop_step1.png new file mode 100644 index 00000000000..153a31e8ca0 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/assets/edition_drop_step1.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/assets/edition_drop_step2.png b/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/assets/edition_drop_step2.png new file mode 100644 index 00000000000..81b3369430e Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/assets/edition_drop_step2.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/assets/edition_drop_step3.png b/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/assets/edition_drop_step3.png new file mode 100644 index 00000000000..9c1cae563a6 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/assets/edition_drop_step3.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/assets/edition_drop_step4.png b/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/assets/edition_drop_step4.png new file mode 100644 index 00000000000..9706f3730e8 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/assets/edition_drop_step4.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/page.mdx b/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/page.mdx new file mode 100644 index 00000000000..e775318b31e --- /dev/null +++ b/apps/portal/src/app/contracts/explore/pre-built-modular/edition-drop/page.mdx @@ -0,0 +1,86 @@ +import { createMetadata, DocImage, Steps, Step, Callout, ContractDeployCard } from "@doc"; +import editionDropStep1 from './assets/edition_drop_step1.png' +import editionDropStep2 from './assets/edition_drop_step2.png' +import editionDropStep3 from './assets/edition_drop_step3.png' +import editionDropStep4 from './assets/edition_drop_step4.png' + +# Deploy a modular Edition Drop contract + +The Edition Drop contract also known as “semi-fungible” or “multi” tokens create multiple NFTs from the same asset based on the [ERC-1155 standard](https://eips.ethereum.org/EIPS/eip-1155). + +Edition Drop includes settings called claim conditions which allow deployers to set a prices for tokens per claim phase and limits on how many tokens to be released. + +### Edition Drop vs Edition + +The Edition Drop contract allows users to claim tokens based on specific settings set using Claim Conditions. If you do not need to set limits or special settings on how to claim, refer to the Edition contract. + +### Use Cases & Examples + +- Create NFT Memberships such as Early Access Cards for users to claim +- Release a limited in-game item +- Create badges, certificates, or passes for real world assets and events + +### Default Installed Modules + +- Claimable +- BatchMetadata +- Royalty +- SequentialTokenId + +### Deploy modular Edition Drop contract + +Learn how to deploy a modular Edition Drop contract through the dashboard. + + + + + +Navigate to Explore, locate the [Modular Edition Drop contract](https://thirdweb.com/thirdweb.eth/ERC1155CoreInitializable?module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6Ik1pbnRhYmxlRVJDMTE1NSJ9&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkJhdGNoTWV0YWRhdGFFUkMxMTU1In0%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlRyYW5zZmVyYWJsZUVSQzExNTUifQ%3D%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlNlcXVlbnRpYWxUb2tlbklkRVJDMTE1NSJ9&displayName=Modular+Edition), and select the Deploy Now button. + + + + + + +Fill in the Contract Metadata including Name, Symbol, Description, and Image. + +Contract Metadata serves as your unique identifier. + + + + + + + +Input a number you want your tokens to start at for the sequential token id. If you don’t have a preference to change it, you may input 0. + + + + + + +Select the preferred chain you want to deploy on and select Deploy Now. + + + + + The Edition Drop contract is deployable on any EVM compatible network. [View all available networks.](https://thirdweb.com/chainlist) + +If you are signed in with an EOA wallet, you will be prompted to sign the transaction. After that your contract is deployed and you can begin configuring the modules. + + + + +### Modular Contract + +This contract is created using the modular contract framework. Modules on this contract are upgradeable. [Learn more about Modular Contracts.](https://portal.thirdweb.com/contracts/modular-contracts/overview) + +### Configure Modules + +To configure the modules, navigate to the Modules view: + +(Coming soon) + + + To install additional modules on this contract, navigate to the Modules view after deploying your contract. + \ No newline at end of file diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/edition/assets/edition_step1.png b/apps/portal/src/app/contracts/explore/pre-built-modular/edition/assets/edition_step1.png new file mode 100644 index 00000000000..912e3aa02e5 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/edition/assets/edition_step1.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/edition/assets/edition_step2.png b/apps/portal/src/app/contracts/explore/pre-built-modular/edition/assets/edition_step2.png new file mode 100644 index 00000000000..f8011c5a334 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/edition/assets/edition_step2.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/edition/assets/edition_step3.png b/apps/portal/src/app/contracts/explore/pre-built-modular/edition/assets/edition_step3.png new file mode 100644 index 00000000000..1234175c77d Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/edition/assets/edition_step3.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/edition/assets/edition_step4.png b/apps/portal/src/app/contracts/explore/pre-built-modular/edition/assets/edition_step4.png new file mode 100644 index 00000000000..1d82ac54369 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/edition/assets/edition_step4.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/edition/page.mdx b/apps/portal/src/app/contracts/explore/pre-built-modular/edition/page.mdx new file mode 100644 index 00000000000..5a2a9c16e7c --- /dev/null +++ b/apps/portal/src/app/contracts/explore/pre-built-modular/edition/page.mdx @@ -0,0 +1,88 @@ +import { createMetadata, DocImage, Steps, Step, Callout, ContractDeployCard } from "@doc"; +import editionStep1 from './assets/edition_step1.png' +import editionStep2 from './assets/edition_step2.png' +import editionStep3 from './assets/edition_step3.png' +import editionStep4 from './assets/edition_step4.png' + + +# Deploy a modular Edition Drop + +The Edition contract also known as “semi-fungible” or “multi” tokens create multiple NFTs from the same asset based on the [ERC-1155 standard](https://eips.ethereum.org/EIPS/eip-1155). NFTs are minted to the creator’s wallet as they are added to the collection. NFTs are still transferable, able to be sold on a marketplace, and perform any other actions as defined by ERC-1155. + +For advanced use cases, Edition enables signature-minting capabilities. + +### Edition vs Edition Drop + +Edition does not have lazy minting capabilities or claim conditions. If you’d prefer to define specific settings such as claim limits, start and end times to claim, and more, please refer to the [Edition Drop contract](https://thirdweb.com/thirdweb.eth/ERC1155CoreInitializable?module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkNsYWltYWJsZUVSQzExNTUifQ%3D%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkJhdGNoTWV0YWRhdGFFUkMxMTU1In0%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlJveWFsdHlFUkMxMTU1In0%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlNlcXVlbnRpYWxUb2tlbklkRVJDMTE1NSJ9&displayName=Modular+Edition+Drop). + +### Use Cases & Examples + +- Create an NFT Collection with multiple copies of each NFT +- Airdrop an NFT to an allowlist of addresses using the same assets and metadata +- Create copies of artwork to be sold on a marketplace + +### Default Installed Modules + +- Mintable +- BatchMetadata +- Transferable +- SequentialTokenId + +### Deploy modular Edition contract + +Learn how to deploy a modular Edition contract through the dashboard. + + + + + + +Navigate to Explore, locate the [Modular Edition contract](https://thirdweb.com/thirdweb.eth/ERC721CoreInitializable?module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6Ik1pbnRhYmxlRVJDNzIxIn0%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkJhdGNoTWV0YWRhdGFFUkM3MjEifQ%3D%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlRyYW5zZmVyYWJsZUVSQzcyMSJ9&displayName=Modular+NFT+Collection), and select the Deploy Now button. + + + + + + +Fill in the Contract Metadata including Name, Symbol, Description, and Image. + +Contract Metadata serves as your unique identifier. + + + + + + + +Input a number you want your tokens to start at for the sequential token id. If you don’t have a preference to change it, you may input 0. + + + + + + +Select the preferred chain you want to deploy on and select Deploy Now. + + + + + The Edition contract is deployable on any EVM compatible network. [View all available networks.](https://thirdweb.com/chainlist) + +If you are signed in with an EOA wallet, you will be prompted to sign the transaction. After that your contract is deployed and you can begin configuring the modules. + + + + +### Modular Contract + +This contract is created using the modular contract framework. Modules on this contract are upgradeable. [Learn more about Modular Contracts.](https://portal.thirdweb.com/contracts/modular-contracts/overview) + +### Configure Modules + +To configure the modules, navigate to the Modules view: + +(Coming soon) + + + To install additional modules on this contract, navigate to the Modules view after deploying your contract. + \ No newline at end of file diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/nft-collection/assets/nft_collection_step1.png b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-collection/assets/nft_collection_step1.png new file mode 100644 index 00000000000..78d965508cc Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-collection/assets/nft_collection_step1.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/nft-collection/assets/nft_collection_step2.png b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-collection/assets/nft_collection_step2.png new file mode 100644 index 00000000000..f70faeac409 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-collection/assets/nft_collection_step2.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/nft-collection/assets/nft_collection_step3.png b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-collection/assets/nft_collection_step3.png new file mode 100644 index 00000000000..8f7f50b72db Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-collection/assets/nft_collection_step3.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/nft-collection/page.mdx b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-collection/page.mdx new file mode 100644 index 00000000000..0537a066c24 --- /dev/null +++ b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-collection/page.mdx @@ -0,0 +1,88 @@ +import { createMetadata, DocImage, Steps, Step, Callout, ContractDeployCard } from "@doc"; +import collectionStep1 from './assets/nft_collection_step1.png' +import collectionStep2 from './assets/nft_collection_step2.png' +import collectionStep3 from './assets/nft_collection_step3.png' +import collectionTransferable from '../assets/erc721_transferable.png' +import collectionBatchMetadata from '../assets/erc721_batchmetadata.png' +import collectionMintable from '../assets/erc721_mintable.png' + +# Deploy a modular NFT Collection contract + +The NFT Collection contract creates a unique collection of NFTs based on the ERC-721A standard. NFTs are minted to the creator’s wallet as they are added to the collection. NFTs are still transferable, able to be sold on a marketplace, and perform any other actions as defined by ERC-721A. + +For advanced use-cases requiring , NFT Collection includes signature-based minting capabilities. + +### NFT Collection vs NFT Drop + +NFT Collection contract does not have lazy minting capabilities or claim conditions. If you’d prefer to define specific settings such as claim limits, start and end times to claim, and more, please refer to the [NFT Drop contract](https://thirdweb.com/thirdweb.eth/ERC721CoreInitializable?module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkNsYWltYWJsZUVSQzcyMSJ9&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkJhdGNoTWV0YWRhdGFFUkM3MjEifQ%3D%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlJveWFsdHlFUkM3MjEifQ%3D%3D&displayName=Modular+NFT+Drop). + +### Use Cases & Examples + +- Create a 1-of-many collection of photography, artwork, or other media to be collected or sold on a marketplace +- Create a 1-of-1 NFT which provide special utility or can be used to gate access to an application +- Create a community-made collection of NFTs using signature-minting + +### Default Installed Modules + +- Mintable +- BatchMetadata +- Transferable + + + + + + +Navigate to Explore, locate the [Modular NFT Collection contract](https://thirdweb.com/thirdweb.eth/ERC721CoreInitializable?module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6Ik1pbnRhYmxlRVJDNzIxIn0%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkJhdGNoTWV0YWRhdGFFUkM3MjEifQ%3D%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlRyYW5zZmVyYWJsZUVSQzcyMSJ9&displayName=Modular+NFT+Collection), and select the Deploy Now button. + + + + + + +Fill in the Contract Metadata including Name, Symbol, Description, and Image. + +Contract Metadata serves as your unique identifier. + + + + + + + +Select the preferred chain you want to deploy on and select Deploy Now. + + + + + The NFT Collection contract is deployable on any EVM compatible network. [View all available networks.](https://thirdweb.com/chainlist) + +If you are signed in with an EOA wallet, you will be prompted to sign the transaction. After that your contract is deployed and you can begin configuring the modules. + + + + +### Modular Contract + +This contract is created using the modular contract framework. Modules on this contract are upgradeable. [Learn more about Modular Contracts.](https://portal.thirdweb.com/contracts/modular-contracts/overview) + +### Configure Modules + +To configure the modules, navigate to the Modules view: + +- Configure the MintableERC721 module to facilitate minting of ERC721 tokens with sales settings + + + +- Configure BatchMetadataERC721 to upload the NFT metadata + + + +- Configure the Transferable721 Module to restrict transfers, if desired. + + + + + To install additional modules on this contract, navigate to the Modules view after deploying your contract. + + diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/nft-drop/assets/nft_drop_step1.png b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-drop/assets/nft_drop_step1.png new file mode 100644 index 00000000000..c69ae0220d9 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-drop/assets/nft_drop_step1.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/nft-drop/assets/nft_drop_step2.png b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-drop/assets/nft_drop_step2.png new file mode 100644 index 00000000000..5f3eb3c23e9 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-drop/assets/nft_drop_step2.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/nft-drop/assets/nft_drop_step3.png b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-drop/assets/nft_drop_step3.png new file mode 100644 index 00000000000..2c56a09aa76 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-drop/assets/nft_drop_step3.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/nft-drop/page.mdx b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-drop/page.mdx new file mode 100644 index 00000000000..f5013f38e9a --- /dev/null +++ b/apps/portal/src/app/contracts/explore/pre-built-modular/nft-drop/page.mdx @@ -0,0 +1,76 @@ +import { createMetadata, DocImage, Steps, Step, Callout, ContractDeployCard } from "@doc"; +import nftDropStep1 from './assets/nft_drop_step1.png' +import nftDropStep2 from './assets/nft_drop_step2.png' +import nftDropStep3 from './assets/nft_drop_step3.png' + +# Deploy a modular NFT Drop contract + +The NFT Drop contract creates a unique collection of NFTs based on the [ERC-721A](https://www.erc721a.org/) standard. NFT Drop allows you to define claim conditions or settings which define how a user can claim an NFT. + +### NFT Drop vs NFT Collection + +NFT Drop has the Claimable module enabling claim conditions. If you’d prefer to not define specific settings such as claim limits, start and end times to claim, and more, please refer to the [NFT Collection contract](https://thirdweb.com/thirdweb.eth/ERC721CoreInitializable?module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6Ik1pbnRhYmxlRVJDNzIxIn0%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkJhdGNoTWV0YWRhdGFFUkM3MjEifQ%3D%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlRyYW5zZmVyYWJsZUVSQzcyMSJ9&displayName=Modular+NFT+Collection). + +### Use Cases & Examples + +- Create an NFT profile pic collection with each NFT having a different combination of traits +- Release NFTs in phases with exclusivity, discounted, or public phases +- Create restricted-access NFT Drops for allowlisted wallets to claim + +### Default Installed Modules + +- Claimable +- BatchMetadata +- Royalty + +### Deploy a modular NFT Drop contract + +Learn how to deploy a modular NFT Drop contract through the dashboard. + + + + + + +Navigate to Explore, locate the [Modular NFT Drop contract](https://thirdweb.com/thirdweb.eth/ERC721CoreInitializable?module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkNsYWltYWJsZUVSQzcyMSJ9&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkJhdGNoTWV0YWRhdGFFUkM3MjEifQ%3D%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlJveWFsdHlFUkM3MjEifQ%3D%3D&displayName=Modular+NFT+Drop), and select the Deploy Now button. + + + + + + +Fill in the Contract Metadata including Name, Symbol, Description, and Image. + +Contract Metadata serves as your unique identifier. + + + + + + + +Select the preferred chain you want to deploy on and select Deploy Now. + + + + + The NFT Drop contract is deployable on any EVM compatible network. [View all available networks.](https://thirdweb.com/chainlist) + +If you are signed in with an EOA wallet, you will be prompted to sign the transaction. After that your contract is deployed and you can begin configuring the modules. + + + + +### Modular Contract + +This contract is created using the modular contract framework. Modules on this contract are upgradeable. [Learn more about Modular Contracts.](https://portal.thirdweb.com/contracts/modular-contracts/overview) + +### Configure Modules + +To configure the modules, navigate to the Modules view: + +(Coming soon) + + + To install additional modules on this contract, navigate to the Modules view after deploying your contract. + diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/assets/oe_step1.png b/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/assets/oe_step1.png new file mode 100644 index 00000000000..d69fb3388d4 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/assets/oe_step1.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/assets/oe_step2.png b/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/assets/oe_step2.png new file mode 100644 index 00000000000..2431aff7196 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/assets/oe_step2.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/assets/oe_step3.png b/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/assets/oe_step3.png new file mode 100644 index 00000000000..9adaa4a1e70 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/assets/oe_step3.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/assets/oe_step4.png b/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/assets/oe_step4.png new file mode 100644 index 00000000000..f7220fdd453 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/assets/oe_step4.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/page.mdx b/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/page.mdx new file mode 100644 index 00000000000..312c8fcd1e7 --- /dev/null +++ b/apps/portal/src/app/contracts/explore/pre-built-modular/open-edition/page.mdx @@ -0,0 +1,90 @@ +import { createMetadata, DocImage, Steps, Step, Callout, ContractDeployCard } from "@doc"; +import openEditionStep1 from './assets/oe_step1.png' +import openEditionStep2 from './assets/oe_step2.png' +import openEditionStep3 from './assets/oe_step3.png' +import openEditionStep4 from './assets/oe_step4.png' + + + + +# Deploy a modular Open Edition contract + +The Open Edition contract creates NFTs with shared metadata with unique token IDs appended to the NFTs name. Contrary to standard NFT contracts, Open Edition has an unlimited supply and users may continuously mint them increasing accessibility to a broader audience. The Open Edition contract is based on the ERC-721A contract. + +### Claim Settings + +This contract does not require limits to the total supply of NFTs. Any settings related to claim phases may still be applied such as price per NFT, allowlists, start and end times to the phases, and NFTs per wallet. + +### Use Cases & Examples + +- Timed Drops to allow unlimited purchases of NFTs within a certain window of time +- Generative art NFTs with each NFT portraying unique artwork different from previous +- Event specific drops to collect as commemorations, special promotions, and more + +### Default Installed Modules + +- Claimable +- OpenEditionMetadata +- Royalty + +### Deploy modular Open Edition contract + +Learn how to deploy a modular Open Edition contract through the dashboard. + + + + + + +Navigate to Explore, locate the [Modular Open Edition contract](https://thirdweb.com/thirdweb.eth/ERC721CoreInitializable?module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkNsYWltYWJsZUVSQzcyMSJ9&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6Ik9wZW5FZGl0aW9uTWV0YWRhdGFFUkM3MjEifQ%3D%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlJveWFsdHlFUkM3MjEifQ%3D%3D&displayName=Modular+Open+Edition), and select the Deploy Now button. + + + + + + +Fill in the Contract Metadata including Name, Symbol, Description, and Image. + +Contract Metadata serves as your unique identifier. + + + + + + + + +Determine a percentage of the revenue from royalties and pass to the percentage field, if desired. + +The Transfer Validator Address is an address that must enforce royalties in compliance with ERC-721C. [Learn more about the ERC-721C standard.](https://blog.thirdweb.com/guides/deploy-erc721a-nft-collection-royalties-thirdweb-guide-2/) + + + + + + +Select the preferred chain you want to deploy on and select Deploy Now. + + + + + The Open Edition contract is deployable on any EVM compatible network. [View all available networks.](https://thirdweb.com/chainlist) + +If you are signed in with an EOA wallet, you will be prompted to sign the transaction. After that your contract is deployed and you can begin configuring the modules. + + + + +### Modular Contract + +This contract is created using the modular contract framework. Modules on this contract are upgradeable. [Learn more about Modular Contracts.](https://portal.thirdweb.com/contracts/modular-contracts/overview) + +### Configure Modules + +To configure the modules, navigate to the Modules view: + +(Coming soon) + + + To install additional modules on this contract, navigate to the Modules view after deploying your contract. + \ No newline at end of file diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/token-drop/assets/token_drop_step1.png b/apps/portal/src/app/contracts/explore/pre-built-modular/token-drop/assets/token_drop_step1.png new file mode 100644 index 00000000000..c81f7af1f62 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/token-drop/assets/token_drop_step1.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/token-drop/assets/token_drop_step2.png b/apps/portal/src/app/contracts/explore/pre-built-modular/token-drop/assets/token_drop_step2.png new file mode 100644 index 00000000000..158af1afc64 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/token-drop/assets/token_drop_step2.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/token-drop/assets/token_drop_step3.png b/apps/portal/src/app/contracts/explore/pre-built-modular/token-drop/assets/token_drop_step3.png new file mode 100644 index 00000000000..c016651e699 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/token-drop/assets/token_drop_step3.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/token-drop/page.mdx b/apps/portal/src/app/contracts/explore/pre-built-modular/token-drop/page.mdx new file mode 100644 index 00000000000..b484f108fef --- /dev/null +++ b/apps/portal/src/app/contracts/explore/pre-built-modular/token-drop/page.mdx @@ -0,0 +1,86 @@ +import { createMetadata, DocImage, Steps, Step, Callout, ContractDeployCard } from "@doc"; +import tokenDropStep1 from './assets/token_drop_step1.png' +import tokenDropStep2 from './assets/token_drop_step2.png' +import tokenDropStep3 from './assets/token_drop_step3.png' +import tokenDropTransferable from '../assets/erc20_transferable.png' +import tokenDropClaimable from '../assets/erc20_claimable.png' + + +# Deploy a modular Token Drop Contract + +The Token Drop contract creates digital currencies that are released for a set price and is compliant with the [ERC-20](https://eips.ethereum.org/EIPS/eip-20) standard. This contract defines a common set of rules for tokens including how they can be transferred, how transactions are approved, and how data about token balances is accessed. + +Token Drop includes settings called claim conditions which allow deployers to set a prices for tokens per claim phase and limits on how many tokens to be released. These are enabled through the Claimable module. + +### Token vs Token Drop + +The Token Drop contract allows users to claim tokens based on specific settings set using Claim Conditions. If you do not need to set limits or special settings on how to claim, refer to the simple [Token contract](https://thirdweb.com/thirdweb.eth/ERC20CoreInitializable?module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6Ik1pbnRhYmxlRVJDMjAifQ%3D%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlRyYW5zZmVyYWJsZUVSQzIwIn0%3D&displayName=Modular+Token). + +### Use Cases + +- Release cryptocurrency for a set prices. Example, 1 MATIC per token +- Allow specific wallets to claim tokens before public releases +- Allow users to claim tokens till a set deadline + +### Default Installed Modules + +- Transferable +- Claimable + +### Deploy modular Token Drop + +Learn how to deploy a modular Token Drop contract through the dashboard. + + + + + + +Navigate to Explore, locate the [Modular Token Drop contract](https://thirdweb.com/thirdweb.eth/ERC20CoreInitializable?module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkNsYWltYWJsZUVSQzIwIn0%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlRyYW5zZmVyYWJsZUVSQzIwIn0%3D&displayName=Modular+Token+Drop), and select the Deploy Now button. + + + + + + +Fill in the Contract Metadata including Name, Symbol, Description, and Image. + +Contract Metadata serves as your unique identifier. + + + + + + + +Select the preferred chain you want to deploy on and select Deploy Now. + + + + + The Token Drop contract is deployable on any EVM compatible network. [View all available networks.](https://thirdweb.com/chainlist) + +If you are signed in with an EOA wallet, you will be prompted to sign the transaction. After that your contract is deployed and you can begin configuring the modules. + + + + +### Modular Contract + +This contract is created using the modular contract framework. Modules on this contract are upgradeable. [Learn more about Modular Contracts.](https://portal.thirdweb.com/contracts/modular-contracts/overview) + +### Configure Modules + +To configure the modules, navigate to the Modules view: + +- Configure the Transferable Module to restrict transfers, if desired. + + + +- Configure the Claimable module to mint tokens, set claim conditions, and update the primary sale recipient + + + + + To install additional modules on this contract, navigate to the Modules view after deploying your contract. + \ No newline at end of file diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/token/assets/token_step1.png b/apps/portal/src/app/contracts/explore/pre-built-modular/token/assets/token_step1.png new file mode 100644 index 00000000000..68e8eb7f9d7 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/token/assets/token_step1.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/token/assets/token_step2.png b/apps/portal/src/app/contracts/explore/pre-built-modular/token/assets/token_step2.png new file mode 100644 index 00000000000..8e50cf812e0 Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/token/assets/token_step2.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/token/assets/token_step3.png b/apps/portal/src/app/contracts/explore/pre-built-modular/token/assets/token_step3.png new file mode 100644 index 00000000000..69d8c78555d Binary files /dev/null and b/apps/portal/src/app/contracts/explore/pre-built-modular/token/assets/token_step3.png differ diff --git a/apps/portal/src/app/contracts/explore/pre-built-modular/token/page.mdx b/apps/portal/src/app/contracts/explore/pre-built-modular/token/page.mdx new file mode 100644 index 00000000000..3692670d078 --- /dev/null +++ b/apps/portal/src/app/contracts/explore/pre-built-modular/token/page.mdx @@ -0,0 +1,84 @@ +import { createMetadata, DocImage, Steps, Step, Callout, ContractDeployCard } from "@doc"; +import tokenStep1 from './assets/token_step1.png' +import tokenStep2 from './assets/token_step2.png' +import tokenStep3 from './assets/token_step3.png' +import tokenTransferable from '../assets/erc20_transferable.png' + + +# Deploy a modular Token Contract + +The modular Token contract creates digital currencies and is compliant with the ERC-20 standard. This contract defines a common set of +rules for tokens including how they can be transferred, how transactions are approved, and how data about token balances is accessed. + +### Token vs Token Drop + +The Token contract does not allow users to claim tokens under the criteria of claim conditions. If you would prefer +to set limits such as when and how your users can claim tokens defined through allowlists, release dates, and claim limits, +please refer to the [Token Drop contract](https://thirdweb.com/thirdweb.eth/ERC20CoreInitializable?module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IkNsYWltYWJsZUVSQzIwIn0%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlRyYW5zZmVyYWJsZUVSQzIwIn0%3D&displayName=Modular+Token+Drop). + + +### Use Cases + +- Sell NFTs on a marketplace in a custom token +- Create custom cryptocurrencies used as a digital currency, for payments, trading, stable-coins, ICOs, and more +- Reward users with tokens for specific actions completed in games or other applications +- Grant governance rights by using tokens to vote on protocol upgrades, decisions, allocations of treasury resources + +### Default Installed Modules + +- Transferable +- Mintable + +### Deploy modular Token +Learn how to deploy a modular Token contract through the dashboard. + + + + + + +Navigate to Explore, locate the [Modular Token contract](https://thirdweb.com/thirdweb.eth/ERC20CoreInitializable?module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6Ik1pbnRhYmxlRVJDMjAifQ%3D%3D&module=eyJwdWJsaXNoZXIiOiJkZXBsb3llci50aGlyZHdlYi5ldGgiLCJtb2R1bGVJZCI6IlRyYW5zZmVyYWJsZUVSQzIwIn0%3D&displayName=Modular+Token), and select the Deploy Now button. + + + + + + +Fill in the Contract Metadata including Name, Symbol, Description, and Image. + +Contract Metadata serves as your unique identifier. + + + + + + + +Select the preferred chain you want to deploy on and select Deploy Now. + + + + + The Token contract is deployable on any EVM compatible network. [View all available networks.](https://thirdweb.com/chainlist) + +If you are signed in with an EOA wallet, you will be prompted to sign the transaction. After that your contract is deployed and you can begin configuring the modules. + + + + +### Modular Contract + +This contract is created using the modular contract framework. Modules on this contract are upgradeable. [Learn more about Modular Contracts.](https://portal.thirdweb.com/contracts/modular-contracts/overview) + +### Configure Modules + +To configure the modules, navigate to the Modules view: + +- Configure the Transferable Module to restrict transfers, if desired. + + + + + + To install additional modules on this contract, navigate to the Modules view after deploying your contract. + diff --git a/apps/portal/src/app/contracts/sidebar.tsx b/apps/portal/src/app/contracts/sidebar.tsx index c61ee8a611f..ab97a111549 100644 --- a/apps/portal/src/app/contracts/sidebar.tsx +++ b/apps/portal/src/app/contracts/sidebar.tsx @@ -7,6 +7,7 @@ import { } from "@/icons"; const prebuiltSlug = "/contracts/explore/pre-built-contracts"; +const prebuiltModular = "/contracts/explore/pre-built-modular"; const modularContractsSlug = "/contracts/modular-contracts"; const deploySlug = "/contracts/deploy"; const publishSlug = "/contracts/publish"; @@ -38,7 +39,55 @@ export const sidebar: SideBar = { href: "/contracts/explore/overview", }, { - name: "Pre-built Contracts", + name: "Pre-built Modular", + links: [ + { + name: "ERC-20", + links: [ + { + name: "Token", + href: `${prebuiltModular}/token`, + }, + { + name: "Token Drop", + href: `${prebuiltModular}/token-drop`, + }, + ], + }, + { + name: "ERC-721", + links: [ + { + name: "NFT Collection", + href: `${prebuiltModular}/nft-collection`, + }, + { + name: "NFT Drop", + href: `${prebuiltModular}/nft-drop`, + }, + { + name: "Open Edition", + href: `${prebuiltModular}/open-edition`, + }, + ], + }, + { + name: "ERC-1155", + links: [ + { + name: "Edition", + href: `${prebuiltModular}/edition`, + }, + { + name: "Edition Drop", + href: `${prebuiltModular}/edition-drop`, + }, + ], + }, + ], + }, + { + name: "Pre-built Standard", links: [ { name: "ERC-20",