/reguide_nft_marketplace

Primary LanguageTypeScriptApache License 2.0Apache-2.0

NFT Marketplace V3

Create an NFT marketplace on top of your NFT collection on any EVM-compatible blockchain.

Features

  • View all NFTs from your collection and their status on the marketplace on the buy page.

  • Select which NFT from your wallet to sell for either a direct listing or english auction on the marketplace on the sell page.

  • View all NFTs a user owns from your collection on the profile pages.

  • Buy NFTs directly from the marketplace on the item pages.

  • Place bids/offers on NFTs from the marketplace on the item pages.


Using this template

  1. Deploy a Marketplace V3 contract
  2. Clone this repository using the CLI
  3. Plug your contract addresses and chain in the contractAddresses.ts file.

Deploy the Marketplace V3 contract

Head to the MarketplaceV3 contract page on the thirdweb dashboard.

Deploy the marketplace to the same network as your NFT collection.


Clone this repository

Clone a copy of this repository and install the dependencies using the thirdweb CLI:

npx thirdweb create --template marketplace-v3

Note: This requires Node.js and npm and Git. Yarn is also recommended.


Add your contract addresses

In the contractAddresses.ts file, add your contract addresses and chain.

If you haven't already, import your smart contracts into the thirdweb dashboard.

/** Replace the values below with the addresses of your smart contracts */

// 1. Set up the network your smart contracts are deployed to.
// First, import the chain from the package, then set the NETWORK variable to the chain.
import { Mumbai } from "@thirdweb-dev/chains";
export const NETWORK = Mumbai;

// 2. The address of the marketplace V3 smart contract.
// Deploy your own: https://thirdweb.com/thirdweb.eth/MarketplaceV3
export const MARKETPLACE_ADDRESS = "";

// 3. The address of your NFT collection smart contract.
export const NFT_COLLECTION_ADDRESS = "";

// (Optional) Set up the URL of where users can view transactions on
// For example, below, we use Mumbai.polygonscan to view transactions on the Mumbai testnet.
export const ETHERSCAN_URL = "https://mumbai.polygonscan.com";

Join our Discord!

For any questions, suggestions, join our discord at https://discord.gg/thirdweb.