Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -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.

<Steps>

<Step title="Locate Contract">

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.

<DocImage src={editionDropStep1} alt="Screenshot Edition Drop contract" />

</Step>

<Step title="Configure Contract Metadata">
Fill in the Contract Metadata including Name, Symbol, Description, and Image.

Contract Metadata serves as your unique identifier.

<DocImage src={editionDropStep2} alt="Screenshot of Edition Drop configure metadata" />

</Step>


<Step title="Configure Sequential Token Id">
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.

<DocImage src={editionDropStep3} alt="Screenshot of Edition Drop configure sequential token id" />

</Step>

<Step title="Select Chain">
Select the preferred chain you want to deploy on and select Deploy Now.

<DocImage src={editionDropStep4} alt="Screenshot of Edition Drop select chain" />

<Callout variant="info" title="Any EVM Compatible">
The Edition Drop contract is deployable on any EVM compatible network. [View all available networks.](https://thirdweb.com/chainlist)
</Callout>
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.
</Step>

</Steps>

### 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)

<Callout variant='info' title="Install Modules">
To install additional modules on this contract, navigate to the Modules view after deploying your contract.
</Callout>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -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.

<Steps>


<Step title="Locate Contract">

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.

<DocImage src={editionStep1} alt="Screenshot Edition contract" />

</Step>

<Step title="Configure Contract Metadata">
Fill in the Contract Metadata including Name, Symbol, Description, and Image.

Contract Metadata serves as your unique identifier.

<DocImage src={editionStep2} alt="Screenshot of Edition configure metadata" />

</Step>


<Step title="Configure Sequential Token Id">
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.

<DocImage src={editionStep3} alt="Screenshot of Edition configure sequential token id" />

</Step>

<Step title="Select Chain">
Select the preferred chain you want to deploy on and select Deploy Now.

<DocImage src={editionStep4} alt="Screenshot of Edition select chain" />

<Callout variant="info" title="Any EVM Compatible">
The Edition contract is deployable on any EVM compatible network. [View all available networks.](https://thirdweb.com/chainlist)
</Callout>
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.
</Step>

</Steps>

### 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)

<Callout variant='info' title="Install Modules">
To install additional modules on this contract, navigate to the Modules view after deploying your contract.
</Callout>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -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

<Steps>


<Step title="Locate Contract">

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.

<DocImage src={collectionStep1} alt="Screenshot NFT Collection contract" />

</Step>

<Step title="Configure Contract Metadata">
Fill in the Contract Metadata including Name, Symbol, Description, and Image.

Contract Metadata serves as your unique identifier.

<DocImage src={collectionStep2} alt="Screenshot of NFT Collectionconfigure metadata" />


</Step>

<Step title="Select Chain">
Select the preferred chain you want to deploy on and select Deploy Now.

<DocImage src={collectionStep3} alt="Screenshot of Token select chain screen" />

<Callout variant="info" title="Any EVM Compatible">
The NFT Collection contract is deployable on any EVM compatible network. [View all available networks.](https://thirdweb.com/chainlist)
</Callout>
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.
</Step>

</Steps>

### 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

<DocImage src={collectionMintable} alt="Screenshot of ERC721 Mintable module"/>

- Configure BatchMetadataERC721 to upload the NFT metadata

<DocImage src={collectionBatchMetadata} alt="Screenshot of ERC721 BatchMetadata module"/>

- Configure the Transferable721 Module to restrict transfers, if desired.

<DocImage src={collectionTransferable} alt="Screenshot of ERC721 Transferable module"/>

<Callout variant='info' title="Install Modules">
To install additional modules on this contract, navigate to the Modules view after deploying your contract.
</Callout>

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -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.

<Steps>


<Step title="Locate Contract">

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.

<DocImage src={nftDropStep1} alt="Screenshot NFT Drop contract" />

</Step>

<Step title="Configure Contract Metadata">
Fill in the Contract Metadata including Name, Symbol, Description, and Image.

Contract Metadata serves as your unique identifier.

<DocImage src={nftDropStep2} alt="Screenshot of NFT Drop configure metadata" />


</Step>

<Step title="Select Chain">
Select the preferred chain you want to deploy on and select Deploy Now.

<DocImage src={nftDropStep3} alt="Screenshot of NFT Drop select chain screen" />

<Callout variant="info" title="Any EVM Compatible">
The NFT Drop contract is deployable on any EVM compatible network. [View all available networks.](https://thirdweb.com/chainlist)
</Callout>
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.
</Step>

</Steps>

### 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)

<Callout variant='info' title="Install Modules">
To install additional modules on this contract, navigate to the Modules view after deploying your contract.
</Callout>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading